npm install --save 和 --save-dev的区别

npm install xxx

  • 模块安装到全局,不会在项目node_modules目录中保存模块包
  • 不会将模块依赖写入到package.json中的devDependecies或者dependecies节点
  • 运行npm install 初始化项目时不会下载模块

npm install -g xxx

  • 安装模块到全局,不会再node_modules目录中保存该模块包
  • 不会将模块依赖写入到package.json中的devDependecies或者dependecies节点
  • 运行npm install 初始化项目时不会下载模块

npm install --save/-S xxx

  • 安装模块到node_modules目录中
  • 会将模块依赖写入到dependecies节点
  • 运行npm install 初始化项目时,会将模块下载到项目目录下
  • 运行npm install --production或者注明NODE_ENV变量值为production时,会自动下载模块到node_modules目录中

npm install --save-dev/-D xxx

  • 安装模块到node_modules目录中
  • 会将模块依赖写入devDependecies节点
  • 运行npm install 初始化项目时,会将模块下载到node_modules目录下
  • 运行npm install --production或者注明NODE_ENV变量值为production时,不会自动下载模块到node_modules目录中

dependecies和devDependecies区别又是什么呢

  • devDependecies:节点下的模块是我们在开发时需要用的,比如项目中的gulp,压缩js、css的模块。这些模块在我们的项目部署后是不需要的,所以我们可以使用--save-dev的形式安装
  • dependecies:节点下的模块是我们在编译完成之后,项目运行中需要依赖用的,像express是项目运行必备的,应该安装在dependencies下,所以我们应该使用--save的形式安装

你可能感兴趣的:(npm install --save 和 --save-dev的区别)