--save-dev
是你开发时候依赖的东西,--save
是你发布之后还依赖的东西。
dependencies是运行时(发布后)依赖,devDependencies是开发时的依赖
比如,你写 ES6 代码,如果你想编译成 ES5
发布那么 babel
就是devDependencies
。
如果你用了 jQuery,由于发布之后还是依赖jQuery
,所以是dependencies
。
如果上线之后项目还依赖的模块,直接放 dependencies 里就行了,devDependencies 里面就不用放了,开发的时候会自动去调用 dependencies 中的模块的,不需要重复了。
比如,我做项目用到了 vue vuex n-zepto ,这三个模块都是上线之后还需要依赖的,那么我直接放到 dependencies 里,devDependencies 里不需要放。开发的时候功能不会受到任何影响。