gpt4 book ai didi

angular - 什么是 common.chunk.js?

转载 作者:太空狗 更新时间:2023-10-29 17:31:22 27 4
gpt4 key购买 nike

我有一个使用 angular-cli 1.6.6 运行的 Angular 5 应用程序,当捆绑我的应用程序时,我(在所有其他应用程序中)有一个 common.chunk.js

你知道它是什么吗?它与我的任何模块都不匹配,它也不是 vendorma​​inpolyfill 因为它们有自己的专用 block 。

enter image description here

最佳答案

公共(public) block 是一个存放多个功能模块使用的所有东西的地方。

假设您在自定义 grid 模块中有一个自定义网格组件。然后将此网格模块导入您的 useradmin 功能模块。因为 grid 模块用在多个特性模块中,所以 Webpack 将其拼接成一个 common.chunk 供其他特性模块依赖。

如果您在关闭 block 命名的情况下运行构建(--named-chunks false - 默认在 --prod 构建中使用),common .chunk 变为 0.chunk - 必须在任何其他惰性 block 之前加载的第零个 block 。

这样做的一个缺点是,如果你的应用中有很多小的惰性模块(我认为从截图来看就是这种情况),common.chunk 将开始变得臃肿特别快。假设您的两个懒惰模块使用了一些很棒(但胖乎乎的)图表库。图表库中所有的 tree-shaken 代码都将在 common.chunk 中结束。即使其他惰性模块不使用这堆图表代码中的任何一个,它们仍然依赖于 common.chunk 并且会加载并执行它们不需要的所有图表代码。

要查看是什么,您可以使用 webpack-bundle-analyzer 来检查您构建的 block 的内部。您可以使用 npm i --D 它或使用 npx 来避免使您的开发依赖项膨胀。

ng build --prod --stats-json && npx webpack-bundle-analyzer dist/stats.json

希望这会有所帮助:-)

关于angular - 什么是 common.chunk.js?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48709771/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com