美文网首页
package.json--dependencies和devDe

package.json--dependencies和devDe

作者: 神话降临 | 来源:发表于2020-08-12 11:14 被阅读0次

    dependencies:项目依赖。在编码阶段和呈现页面阶段都需要的,也就是说,项目依赖即在开发环境中,又在生产环境中。如js框架vue、页面路由vue-router,各种ui框架antd、element-ui、vant等,-save 自动把模块和版本号添加到dependencies部分
    devDependencies: 开发依赖。仅仅在写代码过程中需要使用,比如css预处理器、vue-cli脚手架、eslint之类,-save-dev 自动把模块和版本号添加到devdependencies部分
    出于好奇,我有把devDependencies内容移动到dependencies但是没有什么区别

    实质区别

    如果我们只是单纯的做项目,那么我们可简单地认为生产环境和开发环境做为一种友善的提示,实质没有什么区别;但是,如果在发布npm包的时候,两种环境安装方式是有很大区别的!!!

    
    假设有以下两个模块:
    模块A
    - devDependencies
      模块B
    - dependencies
      模块C
    模块D
    - devDependencies
      模块E
    - dependencies
      模块A
    npm install D的时候, 下载的模块为:
    - D
    - A
    - C
    当我们下载了模块D的源码,并且在根目录下npm install, 下载的模块为:
    - A
    - C
    - E
    

    所以,在发布npm包的时候,本身dependencies下的模块会作为依赖,一起被下载;devDependencies下面的模块就不会自动下载了;但对于项目而言,npm install 会自动下载devDependencies和dependencies下面的模块。

    -S -D区别

    -g 是全局安装,不带 -g 会安装在个人文件夹
    -S 与 --save 的简写,安装包信息会写入 dependencies 中
    -D 与 --save-dev 的简写,安装包写入 devDependencies 中

    相关文章

      网友评论

          本文标题:package.json--dependencies和devDe

          本文链接:https://www.haomeiwen.com/subject/nmepdktx.html