package.json 里的 devDependencies 是什么意思?
发布于 12 年前 作者 jiyinyiyong 37233 次浏览 最后一次编辑是 8 年前 来自 问答

开发过程依赖的模块么, 那写在 packages.json 里什么作用?

18 回复

在package.json所在目录执行npm install的时候,devDependencies里面的模块也会被安装的。

如果定义了 {"bin": "./bin/xxx"} 的话命令这个命令会怎么处理?

@jiyinyiyong 这个感觉是给npm用的,在npm install -g的时候,如果package.json文件里有定义bin,就会在npm目录中生成一个命令名字为文件名的shell脚本,这个脚本里面执行node ./bin/xxx。

@imzshh 原来还能这样用啊 就是说要不安装 dev*** 的话就要指定 production 对吧 http://stackoverflow.com/questions/9268259/how-do-you-install-development-only-npm-modules-for-node-js-package-json 然后 Express 里的 production 也是跟这里的对应, 因为两个环境拥有的模块不同对么

@jiyinyiyong 是的,但是Express是检测process.env.NODE_ENV的,所以要运行在production mode的话,就要把这个环境变量改成production。

@imzshh 懂了. 谢谢

“dependencies”: {},//生产环境 "devDependencies": {}//开发环境

@jiyinyiyong 如果是 global 安装,bin 里定义的命令会被安装到全局,比如 pm2, forever, coffee-script, gulp 都是这么做的

比如你测试的时候需要从网络爪数据,但实际上你的包不需要从网络抓数据,这个时候就要把 spidex 加进去

  • -! 不要挖我两年前的帖子啊., 好想关掉. 要不问题还是换成 Bower 里的 devDependencies 是怎么回事好了… 前端代码都是要编译的, 区分 devdev 是不是多此一举了

卧槽,为什么会有人开始挖坟?最近貌似好多坟都被挖上来了

@xadillax 挖掘技术哪家强?

@fish 要记住这么多选项,也是醉了

怎么又挖坟了(#゚Д゚)

基本选项记住很正常啊,不常用的去翻 npm 的 package.json 文档就好了哇。

@chapgaga

npm init npm install XXX --save npm install XXX --saveDev

回到顶部