node_modules 文件夹中存放许多的模块文件及插件,node_modules是安装node后用来存放用包管理工具下载安装的包的文件夹。比如webpack、gulp、grunt这些工具。在node.js中模块与文件是一一对应的,也就是说一个node.js文件就是一个模块。
概念:package.json就是管理你本地安装的npm包,用于定义了这个项目所需要的各种模块,以及项目的配置信息(比如名称、版本、许可证等元数据)。”
使用场景:在拷贝项目时不需要拷贝node_modules文件夹,如果拷贝的话会很慢,所以需要用package.json来记录依赖版本号,可以解决安装的依赖与原项目依赖及版本保持一致的问题
生成方式:一个新的项目 想要生成属于它的package文件使用 npm init -y
来生成,它出现在项目的根目录下,里面记录了当前的项目信息,
:
{
"name": "xxxx",//你的项目名
"version": "1.0.0",
"description": "",
"main": "index.js",//主入口文件
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"//命令别名
},
"repository": {
"type": "git",
"url": "git地址"
}//记录git地址
"keywords": [],
"author": "",
"license": "ISC"
"dependencies": {//项目依赖
"axios": "^1.2.2",
"lodash": "^2.4.4"
},
"devDependencies": {//开发依赖
"webpack": "^4.0.2"
}
}
拷贝项目后,直接执行npm install
会自动安装package.json 文件中记录的依赖
项目依赖
使用场景:在项目的开发阶段和线上运营阶段,都需要依赖的第三方包
使用方式:使用npm install
包名 命令将包添加到package.json文件的dependencies字段中 ,重新安装时使用npm install --production
只安装项目依赖
开发依赖
使用场景:在项目的开发阶段需要依赖,线上运营阶段不需要的第三方包
使用方式:使用npm install 包名 --save-dev
将包添加到package.json文件的devDependencies字段中