Questions tagged «lazy-loading»

对于有关“延迟加载”的编程问题,一种设计模式将对象的初始化推迟到需要它的时候。

3
在webpack上,如何在不评估脚本的情况下导入脚本?
我最近正在从事一些网站优化工作,并且通过使用如下的import语句开始在webpack中使用代码拆分: import(/* webpackChunkName: 'pageB-chunk' */ './pageB') 哪个可以正确创建pageB-chunk.js,现在让我们说我想在pageA中预取此块,我可以通过在pageA中添加以下语句来做到这一点: import(/* webpackChunkName: 'pageB-chunk' */ /* webpackPrefetch: true */ './pageB') 这将导致 <link rel="prefetch" href="pageB-chunk.js"> 附加到HTML的头部后,浏览器会预取它,到目前为止效果很好。 问题是我在这里使用的import语句不仅预取js文件,还评估js文件,这意味着该js文件的代码已解析并编译为字节码,并执行了该JS的顶级代码。 这是在移动设备上非常耗时的操作,我想对其进行优化,我只想要预取部分,而不想要评估和执行部分,因为稍后当某些用户交互发生时,我将触发解析并自我评估 ↑↑↑↑↑↑↑↑我只想触发前两步,图片来自https://calendar.perfplanet.com/2011/lazy-evaluation-of-commonjs-modules/ ↑↑↑↑↑↑↑ ↑↑ 当然,我可以通过自己添加预取链接来做到这一点,但这意味着我需要知道应该在预取链接中放入哪个URL,webpack绝对知道该URL,如何从webpack中获取它? webpack有没有简单的方法来实现这一目标?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.