package.json文件下dependencies和devDependencies区别
devDependencies:用于开发环境
dependencies:用于线上环境
重点
dependencies依赖的包不仅线上环境可以用,开发环境也能使用,反之则不行
注意
默认情况下,在哪个文件夹下运行npm,npm就在当前目录创建一个文件夹node_modules
NPM install moduleName --save
- 将项目模块写入到package.json的dependencies节点
- 安装模块到当前node_modules文件夹下
- 运行npm install时,会将模块下载到当前node_modules目录下
NPM install moduleName --save-dev
- 将项目模块写入到package.json的devDependencies节点
- 安装模块到当前node_modules文件夹下
- 运行npm install时,会将模块下载到当前node_modules目录下
NPM install moduleName -g
- 安装模块到全局,不会在项目node_modules目录中安装
- 不会将模块信息写入到dependencies或devDependencies节点
- 运行npm install时,不会下载该模块
注意
具体安装的位置,可以通过 npm config prefix 设置,或者通过 npm config list查看
NPM install moduleName
- 安装模块到当前node_modules文件夹下
- 不会将模块信息写入到dependencies或devDependencies节点
- 运行npm install时,不会下载该模块
总结
devDependencies节点下的模块是开发时候需要的,如构建工具glup、webpack,预处理器less、sass这些只在开发环境有用,所以使用–save-dev安装
dependencies节点下的模块是线上代码运行需要的,如axios、vue-router、vuex,所以需要使用–save安装
转自:https://blog.csdn.net/Liu_yunzhao/article/details/90517622