webpack5 Preload / Prefetch解决按需求加载速度
创始人
2024-01-28 13:34:15
0

代码分离 | webpack 中文文档webpack 是一个模块打包器。它的主要目标是将 JavaScript 文件打包在一起,打包后的文件用于在浏览器中使用,但它也能够胜任转换(transform)、打包(bundle)或包裹(package)任何资源(resource or asset)。https://webpack.docschina.org/guides/code-splitting/#prefetchingpreloading-modules

为什么使用Preload / Prefetch

我们前面已经做了代码分割,同时会使用 import 动态导入语法来进行代码按需加载(我们也叫懒加载,比如路由懒加载就是这样实现的)。

但是加载速度还不够好,比如:是用户点击按钮时才加载这个资源的,如果资源体积很大,那么用户会感觉到明显卡顿效果。

我们想在浏览器空闲时间,加载后续需要使用的资源。我们就需要用上 Preload 或 Prefetch 技术。

是什么Preload / Prefetch

  • Preload:告诉浏览器立即加载资源。

  • Prefetch:告诉浏览器在空闲时才开始加载资源。

它们共同点:

  • 都只会加载资源,并不执行。
  • 都有缓存。

它们区别:

  • Preload加载优先级高,Prefetch加载优先级低。
  • Preload只能加载当前页面需要使用的资源,Prefetch可以加载当前页面资源,也可以加载下一个页面需要使用的资源。
  • 总结:

  • 当前页面优先级高的资源用 Preload 加载。
  • 下一个页面需要使用的资源用 Prefetch 加载。
  • 它们的问题:兼容性较差。

  • 我们可以去 查看兼容问题 网站查询 API 的兼容性问题。
  • Preload 相对于 Prefetch 兼容性好一点。

@vue/preload-webpack-plugin - npm

npm i @vue/preload-webpack-plugin -D
  1. 配置 webpack.prod.js
    const PreloadWebpackPlugin = require("@vue/preload-webpack-plugin");
    module.exports = {plugins: [new PreloadWebpackPlugin({rel: "preload", // preload兼容性更好as: "script",//按照script格式加载// rel: 'prefetch' // prefetch兼容性更差}),
    ]
    }

相关内容

热门资讯

30岁女人辞职出来创业,女人3...   30岁,人生一道坎。30岁更像是一道选择题,是安定下来还是冒险。很多人背负着很大的生活和精神压力...
创业孵化基地如何盈利,黄冈大学...   本报讯(通讯员肖洪亮、坤):“创造世界迎新春”2019黄冈青年会微媒体快报      听说这个活...
创新创业基础网课答案 创新创业...   北京大学教授关于大学意义的谈话引发了热烈的讨论。北京大学的强世功教授说,‘毕业前,一个学会说,就...
第十四届挑战杯,辽宁省大学生创...   9月29日,辽宁工程学院举行2021年辽宁省大学生数学建模竞赛暨体能竞赛颁奖仪式。学校副校长魏,...
项目章软件 项目章软件 项目章...   【考点1】软件定义与软件特点      软件是指与硬件相互依赖的计算机系统的另一部分,包括程序、...
巴南区南湖多彩植物园 巴南区南...   最近越来越热了。      各种各样的花都在和天气竞争。      绿叶衬托得更好。      ...
小组名字和口号,创业小组队名 ...   用小米创业的一句话:做品牌不能输在起跑线上。      想创业,第一步是要有产品。即使是个人品牌...
嘉兴市南湖区栅堰小区 嘉兴市南...         公园内的绿地不仅是休闲、锻炼的场所,也是“人的获得感”的载体,是城市魅力和文化表达的...
招待费用包括哪些内容,创业成本...   说到业务招待费,很多人会不由自主地想到,就是招待客人吃喝玩乐的费用。这等于把业务招待费等同于餐费...
1984创业产业园区秦皇岛,秦...   河北的文化【免费对外开放!秦皇岛新增了一个高价值的“读书打卡处”,你去了吗?】近日,位于秦皇岛市...