package.json文件
1.package.json文件
项目描述文件,记录了当前项目信息,例如项目名称,版本,作者,github地址,当前项目依赖了哪些第三方模块等。
1)使用 npm init -y 命令生成package.json文件。
2)只要package.json文件存在,就可以把项目所依赖的模块使用 ' npm install ' 下载下来。(node_modules文件夹里的内容太多文件过碎,传递给别人耗时耗力,因此看以由package.json下载会效率更好)
图解:
2.依赖
1)项目依赖
* 在项目的开发阶段和线上运营阶段,都需要依赖的第三方包,称为项目依赖
* 使用npm install 包含命令下载的文件会默认被添加到package.json文件的dependencies字段中
* 只想下载项目依赖插件用 ' npm install --production ' 命令,' npm install ' 下载全部文件。
2)开发依赖
* 在项目开发阶段需要依赖,线上运营阶段不需要依赖的第三方包,称为开发依赖
* 使用npm install 包名 --save-dev命令将包添加到package.json文件的devDependencies字段中
图解:
3.package-lock.json文件
① 锁定包的版本,确保再次下载时不会因为包版本不同而产生问题
② 加快下载速度,因为改文件已经记录了项目所依赖第三方包的树状结构和包的下载地址,重新安装时只需要下载即可,不需要做额外的工作
package.json中scripts别名应用
① 在 scripts 中加上别名和对应地址
② 使用 ' npm run ' + ' 别名 ' 运行代码
图解:
4.模块查找
require引入模板时查找规则:
1)当模块有路径没后缀时:
① 如果require中路径完整,直接引入模块
② 如果模块后缀省略,先找同名的js文件再找同名js文件夹
③ 如果有js同名文件夹,则找文件夹中的index.js文件
④ 如果没有index.js文件,就去当前文件夹中的package.json文件中查找main选项中的入口文件
⑤ 如果找不到指定的入口文件就会报错
2)没有路径且没有后缀时:
① Node.js会假设它是一个系统模块
② Node.js会去node_module文件夹中查找
③ 先找同名的js文件再找同名js文件夹
④ 如果有js同名文件夹,则找文件夹中的index.js文件
⑤ 如果没有index.js文件,就去当前文件夹中的package.json文件中查找main选项中的入口文件
⑥ 如果找不到指定的入口文件就会报错