素材牛VIP会员
npm 安装参数中的 --save-dev 是什么意思
 雷***g  分类:Node.js  人气:949  回帖:4  发布于6年前 收藏

看到有些 node.js 的包安装的时候都加上 --save-dev 参数,不知道这参数是做什么的,加和不加有什么区别吗?

$ npm install xxx --save-dev
 标签:npmnode.js

讨论这个帖子(4)垃圾回帖将一律封号处理……

Lv4 码徒
非***星 其它 6年前#1

当你为你的模块安装一个依赖模块时,正常情况下你得先安装他们(在模块根目录下npm install module-name),然后连同版本号手动将他们添加到模块配置文件package.json中的依赖里(dependencies)。

-savesave-dev可以省掉你手动修改package.json文件的步骤。
spm install module-name -save 自动把模块和版本号添加到dependencies部分
spm install module-name -save-dve 自动把模块和版本号添加到devdependencies部分

至于配置文件区分这俩部分, 是用于区别开发依赖模块和产品依赖模块, 以我见过的情况来看 devDepandencies主要是配置测试框架, 例如jshint、mocha。

这一命令的Pull记录
官方文档
站内关于devdependencies的提问

我主要是基于浏览器写Javascript, npm用的少, 以上是个人理解。

Lv4 码徒
那***n 产品经理 6年前#2

npm install takes 3 exclusive, optional flags which save or update the package version in your main package.json:

  1. -S, --save: Package will appear in your dependencies.

  2. -D, --save-dev: Package will appear in your devDependencies.

  3. -O, --save-optional: Package will appear in your optionalDependencies.

from https://docs.npmjs.com/cli/install

Lv4 码徒
贰***兄 页面重构设计 6年前#3
-S, --save: Package will appear in your dependencies.
-D, --save-dev: Package will appear in your devDependencies.
-O, --save-optional: Package will appear in your optionalDependencies.
Lv2 入门
馨***茂 站长 6年前#4

从字面上来看,简单地说,就是把模块装在当前开发目录。
比如,你进入了D盘dev开发目录,那么就自动在dev开发目录下生成node modules文件夹,并在该文件夹下安装该模块。执行命令时,要寻找该模块定义,先从dev目录开始寻找,相比较于全局安装,速度就非常快了。

这个跟js中的局部变量,全局变量的定义比较类似。

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取