安装的命令区别
npm install react --save
npm install eslint --save-dev
使用场景
如果是自己项目中使用,其实没有什么本质区别,每次执行npm install都要全部安装,不管你的依赖是在dependencies 还是在 devDependencies。
一般是在业务代码里必须使用到的,放在dependencies ,如果是babel类 eslint 或者proxy这类只是为了辅助构建或者调试类的,不参与实际项目代码业务逻辑的包,丢在devDependencies里。
如果你的项目发布成一个npm包,别人来安装你发布包的时候,这个时候就只会安装你dependencies的包,devDependencies则会被忽略。因为别人只是用你实际构建出来的业务代码。并不需要使用你开发环境使用的例如babel之类的包。这样可以减少安装太多无关的依赖。