不管是react还是vue项目(基于node.js),在工作中在git上拉取别人的项目代码文件后,都需要npm install 安装一下项目运行的依赖包。在后续的工作中我们可能要用到各种各样的插件等,我们就需要在开发或者生产环境下安装相应的依赖包。
关于npm安装的包依赖管理的问题。单个依赖包管理是这样的:
我们在使用npm install 安装模块或插件的时候,有两种命令把他们写入到 package.json 文件里面去,他们是:
--save-dev
或
--save
首先需要说明的是Dependencies一词的中文意思是依赖和附属的意思,而dev则是
develop(开发)的简写。
所以它们的区别在 package.json 文件里面体现出来的就是,使用 --save-dev 安装的 插件,被写入到 devDependencies 域里面去,而使用 --save 安装的插件,则是被写入到 dependencies 区块里面去。
那 package.json 文件里面的 devDependencies 和 dependencies 对象有什么区别呢?
npm install 【插件名】或 npm install 【插件名】--save 归属dependencies,表示代码运行时所需要的包。
npm install 【插件名】--save-dev 归属 devDependencies,表示开发时依赖的插件(即不会打包至线上)。
devDependencies 里面的插件只用于开发环境,不用于生产环境,而 dependencies 是需要发布到生产环境的。
比如我们写一个项目要依赖于jQuery,没有这个包的依赖运行就会报错,这时候就把这个依赖写入dependencies ;
而我们使用的一些构建工具比如glup、webpack这些只是在开发中使用的包,上线以后就和他们没关系了,所以将它写入devDependencies。
原文:https://blog.csdn.net/zDeer520/article/details/73431295?utm_source=copy