自定义模块 :
主文件 导入其他的文件 用 require
辅助文件 导出用 module.exports
内置模块 :
fs是文件系统模块
require(‘fs’) 导入fs模块
fs.readFile 是读取文件
fs.writeFile 是写入文件 会覆盖之前的(注意:1 文件存在 会覆盖原有内容, 注意:2 文件不存在 会创建新文件,注意:3 文件夹不存在 会报错)
fs.append 是写入文件 不会覆盖之前的
path路径模块两个方法:
path.extname( ) 获取后缀名
path.basename( , )获取文件基础名称
path.join()解决绝对路径拼接问题
__dirname 获取文件夹所在绝对路径
__filename 获取文件在绝对路径
mac本,Node.js 添加 文件到时候 要加 sudo node
npm初始化
下载第三方模块之前,必须先初始化:(npm init -y)
下载第三方模块:
npm install 模块名 模块名 模块名 ……
npm i 模块名 模块名 模块名 ……
卸载模块:
npm uninstall 模块名 模块名 模块名 ……
npm un 模块名 模块名 模块名 ……
下载第三方模块注意事项
文件夹 不能有中文和特殊符号,比如 “练习”、“ajax&node” 都不可以。
文件夹 不能 和 第三方模块同名
下载的第三方模块在当前文件夹中的 node_modules 目录中
下载的第三模块,只能在当前文件夹及其后代文件夹中使用
可以通过package.json文件,查看到我们下载了哪些模块
全局模块
是第三方模块中的一种,也需要使用 npm 工具下载
安装卸载命令:多加一个 -g 即可
npm install -g 模块名 下载
npm uninstall -g 模块名 卸载
默认的全局安装包位置:mac系统下路径是:/usr/local/lib/node_modules/
全局安装模块
任何位置,打开终端
全局安装命令 : mac本: sudo npm i nodemon -g , 输入密码是开机密码!(不显示)
执行文件命令:nodemon 文件名.js
安装nodemon模块:
任何位置,打开终端
执行 npm i -g nodemon 命令; mac本: sudo npm i nodemon -g , 输入密码是开机密码!(不显示)
nodemon安装后,系统中多了一个命令 nodemon;
在启动服务时,可以使用 nodemon 命令 代替 node 命令
好处是,当修改了代码后,nodemon会自动重启服务,解决了我们频繁手动重启服务的问题
全局安装 nrm 模块
任何位置,打开终端
执行 sudo npm install -g nrm 命令
nrm 安装后,系统中多了一个命令 nrm
当需要修改第三方模块下载地址(镜像源)的时候,就可以使用 nrm 工具了
全局模块 nrm 可以灵活的切换下载地址,也叫做切换镜像源
“nrm ls” 命令用于查看可用的镜像源
“nrm use 镜像源名称” 可以切换镜像源
第三方模块小结
本地模块
一定要初始化
安装:npm install 模块名 模块名 …
卸载:npm uninstall 模块名 模块名 …
安装的本地模块,只能在当前文件夹及其后代文件夹中使用
需要通过 require() 加载
全局模块
全局模块,安装之前,不需要初始化
全局模块,不能通过 require() 加载
全局模块,一般都是命令或者工具
安装卸载,只需要多加一个 -g
全局模块,在任何位置都可以使用
package.json
npm初始化后,会生成一个 package.json 文件
package.json 是当前项目(或者包)的说明或配置文件
name:项目或包的名字
version:项目或包的版本
main:项目或包的入口文件
script:命令及简写形式
dependencies:依赖,表示当前项目或包,依赖哪些其他模块
scripts:命令及简写形式
通过 npm run xxx 来执行一个命令
如果命令简写为 start,则可以省略run
dependencies:依赖
项目依赖:项目想要正常运行依赖的第三方模块
下载方法:npm i 包名 --save 或者-s 或者不写放入 dependencies 节点
开发依赖:开发期间需要使用的第三方模块 项目上线 进入生产环境就不需要的第三方模块
下载方法: npm i 包名 -- save -dev 或者-D
放入 devDependencies 节点
如果想要下载所有依赖(程序员) :npm i
项目上线 只要项目依赖(运维):npm i --production