为了账号安全,请及时绑定邮箱和手机立即绑定

dependencies devDependencies区别到底是什么???

dependencies devDependencies区别到底是什么???

慕桂英4014372 2019-05-24 10:19:57
翻了很多答案,都说dependencies是生产环境依赖,devDependencies是开发环境依赖。问题是:如果我把开发环境依赖装到dependencies里会怎么样??说白了就是到底是什么使他们一个用于生产环境,一个用于开发环境??难道例如webpack在打包的时候会区别对待这两个类型的包吗?例如,我用vue-cli打包项目的时候,如果把less-loader装到dependencies里会怎么样?另外多问一个:vue-cli打包的时候怎么分辨把哪些依赖打包到vendor哪些打包到app里的??
查看完整描述

2 回答

?
喵喵时光机

TA贡献1846条经验 获得超7个赞

npm是本来设计用来服务于Node.js包管理的。
在开发一个模块的时候,有些模块需要在发布的时候也被依赖进去,例如:你写了一个proxy的插件,依赖了request模块,这个时候,发布以后如果别人使用必须同时安装request模块,这个就是dependencies
还是在开发一个模块的时候,如果这个时候你需要搞一个工具检查你写的代码格式好不好啦,搞点测试用例咯,或者,你要用typescript神马的编译一下咯,用户使用的时候呢,根本不需要这些玩意儿,只要有编译结果代码就够了,这些模块依赖就在devDependencies
PS:在前端开发的时候,一般情况下,都是只在开发环境需要的东西也就是devDependencies,有些人会习惯于把前端需要的东西放在dependencies,如此而已。你直接npminstall,会把两种依赖一并安装,所以更加无所谓了。
                            
查看完整回答
反对 回复 2019-05-24
?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

打包生产环境资源时,dependencies中的依赖会被打包,而devDependencies中的依赖不会被打包。
开发环境依赖安装到dependencies,本地和生产环境都没问题,就是文件会大一点而已。
生产环境依赖安装到devDependencies,本地没啥问题,生产环境会因为缺少依赖而无法正常运行。
                            
查看完整回答
反对 回复 2019-05-24
  • 2 回答
  • 0 关注
  • 964 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信