一、npm install
- 安装模块到项目node_module目录下
- 不会将模块依赖写入devDdepencies或dependencies节点
- 初始化项目的时候不会下载模块
二、npm install -g
4. 安装模块到全局,不会在node_module目录中保存模块
5. 不会将模块依赖写入devDependencies节点
3.初始化项目的时候不会下载模块
三、 npm install -save-dev
6. 安装模块到项目node_module目录下
2.会将依赖写进dependencies节点
7. 初始化项目的时候会将模块下载到项目目录下
8. 运行npm install --production 或者注明node_env变量值为production时候,不会自动下载模块到node_module目录中
总结
devDependencies 节点下的模块是我们在开发时需要用的,比如项目中使用的 gulp ,压缩css、js的模块。这些模块在我们的项目部署后是不需要的,所以我们可以使用 --save-dev 的形式安装。像 express 这些模块是项目运行必备的,应该安装在 dependencies 节点下,所以我们应该使用 --save 的形式安装。
最大的区别就是,在生产环境,使用npm install --production安装 dependencies 部分的模块,
在开发环境,npm i ,安装所有devDependencies 和 dependencies里面的模块
所以,在生产环境,就不需要安装 gulp ,webpack 这样的模块,可以通过这种方法区分