繁体   English   中英

devDependencies 会影响包的大小吗?

[英]Do devDependencies affect bundle size?

我仔细看了看,找不到这个问题的直接答案。

我添加为devDependencies的包实际上最终会出现在生产包 JS 文件中并因此影响其大小吗? 或者它只是进入捆绑包的dependencies

不,它不会影响您的包大小,因为这些包仅在开发模式下使用。 让我们举一个像typescript这样的示例包

devDependencies: {
  "typescript": "~3.2.5"
}

所以我只需要打字稿编译器,就在开发模式下进行 linting。 而且我实际上并没有在我的项目中导入打字稿,因为它仅用于开发模式。 因此,如果您正在使用 webpack 并且您没有在项目 webpack 中的任何位置导入 typescript,您是否会通过摇树来消除生产构建不需要的代码,这样 bundle 就不会受到影响。

答案并不像看起来那么容易。 这里是澄清: https : //github.com/webpack/webpack/issues/520#issuecomment-174011824

并在此处添加相关片段:

webpack 构建的浏览器应用程序没有运行时节点依赖项,因此所有前端依赖项都应列为 devDependencies。 依赖与 devDependencies 命名约定历史上源于 node 作为服务器端包管理器,它被滥用到前端包管理器中,这就是为什么这些字段在应用于前端开发时具有违反直觉的名称,这也是每个项目的原因曾经犯过这个错误。 据我所知,在依赖项下列出前端依赖项是无害的,但这是错误的。

我希望这回答了你的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM