webpack3 的async chunk 是什么意思

发布于 2022-09-06 21:26:20 字数 457 浏览 21 评论 0

下面这段文档,看了半天,没理解说的是啥意思
这个和sync在浏览器的加载表现上有啥区别呢?

async: boolean|string,
// 如果设置为 true,一个异步的 公共chunk 会作为 options.name 的子模块,和 options.chunks 的兄弟模块被创建。
// 它会与 options.chunks 并行被加载。
// Instead of using option.filename, it is possible to change the name of the output file by providing
// the desired string here instead of true.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

成熟稳重的好男人 2022-09-13 21:26:20

带有async的配置是提取async chunk中公用模块的,注意是async模块中的公用模块(实验得出的结论,不一定准)。
假如我有两个异步路由a.js和b.js,它们都用了c.js,正常情况下是会将c打包两遍,出两个包a.chunk和b.chunk,配置了async,设置合理规则(minChunks)后,会单独的打包出c.chunk,然后a和b只做对c的请求,而不打包c的代码。


async在webpack中的概念和html中的不一样。script标签的异步也是会在页面解析的时候下载的,但是异步执行(相对于html解析),webpack的async就是正常的满足代码逻辑的时候下载并执行(进入页面时,如果没有触发逻辑,则根本不存在,是相对于业务逻辑)。

参考:Webpack 大法之 Code Splitting

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文