npm的 --save 和 --save-dev 之间的区别

原因
npm包管理器在安装包的时候,会有两种安装方式,一种是–save,另一种是–save-dev。所以我们需要弄清楚这两种安装方式到底有什么区别。

共同点
两种方式都会安装到node_modules目录中。
两种方式都会保存到package.json文件中。
区别
在package.json文件中,有两个存放模块的对象。

"dependencies": {
    "express": "latest",
    "mongoose": "~3.8.3",
    "handlebars-runtime": "~1.0.12",
    "express3-handlebars": "~0.5.0",
    "MD5": "~1.2.0"
},
"devDependencies": {
    "bower": "~1.2.8",
    "grunt": "~0.4.1",
    "grunt-contrib-concat": "~0.3.0",
    "grunt-contrib-jshint": "~0.7.2",
    "grunt-contrib-uglify": "~0.2.7",
    "grunt-contrib-clean": "~0.5.0",
    "browserify": "2.36.1",
    "grunt-browserify": "~1.3.0",
}

–save会存放到”dependencies”,而–save-dev会存放到”devDependencies”。

  • –save是对生产环境所需依赖的声明(开发应用中使用的框架,库)
    比如:jq,react,vue都需要放到这里面
  • –save-dev是对开发环境所需依赖的声明(构建工具,测试工具)
    比如:babel,webpack,都放到当前目录

如何判断

一种是你在使用当前模块的时候,当前模块在github上会告诉你,它需要使用哪种方式安装。 另一种就是你靠自己判断如何安装在哪个里面。 如何使用 如果我们转移一个项目或者下载了一个别人的项目时,是不会带有node_modules目录中的模块的,所以我们拿到项目以后,是需要在根目录进行npm install进行项目安装的,这种默认是生产环境和开发环境都会安装。 如果带上后缀npm install --production则只会安装生产环境的所有模块,而无视开发环境的相关模块。

我们可以通过分开生产环境和开发环境相关的模块,还可以减少安装时间。达到节约时间的目的。

作者:专注前端30年
来源:CSDN
原文:https://blog.csdn.net/qq_30100043/article/details/78088007
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值