Webpack高级 18 -- Preload/Prefetch

180 阅读1分钟

1 . Why?

我们前面已经做了代码分割,同时也使用了 import 动态导入,按需加载(也叫做懒加载)。但是加载速度还不够好,比如:如果是用户点击后再加载,但刚好资源体积有很大,用户就会感到明显的卡顿效果。

2 . 是什么?

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

共同点:

  • 都只会加载资源,并不执行
  • 都有缓存
  • 兼容性都比较差

区别:

  • Preload 加载优先级更高,Prefetch加载优先级低

  • Preload 只能加载当前页面需要使用的资源,Prefetch 可以加载当前页面资源,也可以加载下一个页面需要使用的资源。

All in all:

  • 当前页面优先级高的资源使用 Preload 加载
  • 下一个页面需要使用的资源用 Prefetch 加载

3 . How?

  • 下载包:

    • npm install --save-dev @vue/preload-webpack-plugin
  • 引入包:

1108.png

  • 配置:

    • Preload

1109.png

   - Prefetch
   

1110.png