webpack如何实现懒加载和预加载
发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,小编给大家分享一下webpack如何实现懒加载和预加载,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!正常加载为了看的方便,index.js中的代码非常简单console.log('i
千家信息网最后更新 2025年01月16日webpack如何实现懒加载和预加载
小编给大家分享一下webpack如何实现懒加载和预加载,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
正常加载
为了看的方便,index.js中的代码非常简单
console.log('index.js执行了')import { test } from './test.js'document.getElementById('btn-wrap').onclick = function () { test()}
test.js
console.log('test.js执行了')export function test() { const value = 'hello world' console.log('test value: ', value)}
在index.html中添加按钮
执行webpack命令:
可以看到没有点击按钮时,test.js就已经加载了 。如果test.js比较大,加载比较耗性能。我们就希望能在需要使用的时候在加载
懒加载
修改index.js中的代码
console.log('index.js执行了')// import { test } from './test.js'// document.getElementById('btn-wrap').onclick = function () {// test()// }document.getElementById('btn-wrap').onclick = function () { console.log('==== 点击按钮') import(/*webpackChunkName:'test' */"./test") .then(({test}) => { console.log('test加载成功') test() }) .catch(error => { console.log('test加载失败 error:', error) })}
再次执行webpack命令,在浏览器中查看日志
点击按钮之前只加载了index.js
点击按钮:
可以看到点击按钮之后test.js才执行。
预加载
懒加载实现了js文件按需加载,在需要使用时才进行加载,但是如果js文件非常大加载速度比较慢,在使用时再加载就会使页面出现卡顿。为了优化这个问题,可以使用Prefetch先预加载。
没有使用预加载
点击按钮之前不会加载test.js文件
点击按钮之后才会去加载test.js文件
使用预加载
设置webpackPrefetch:true
使用预加载
document.getElementById('btn-wrap').onclick = function () { console.log('==== 点击按钮') import(/*webpackChunkName:'test' ,webpackPrefetch:true*/"./test") .then(({test}) => { console.log('test加载成功') test() }) .catch(error => { console.log('test加载失败 error:', error) })}
点击按钮之前就预加载了test.js文件:
点击按钮:
总结
正常加载:很多资源并行加载,同一时间加载多个文件
懒加载:需要时才加载
预加载:等其他资源加载完毕,浏览器空闲了,再偷偷加载被设置为预加载的资源
看完了这篇文章,相信你对"webpack如何实现懒加载和预加载"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
按钮
文件
资源
成功
代码
命令
浏览器
篇文章
浏览
再次
多个
大加
完了
性能
日志
时候
时间
更多
知识
空闲
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器信息管理器在哪里
docker链接数据库
怎么开启自动连接服务器
山西工商学院论文数据库
华为数据通信网络安全
法治网络安全主题班会
帝坤互联网科技有限公司
传统数据库系统的不足
网易邮箱服务器怎样开通
伺服器 服务器
华为4路服务器12口硬盘扩展板
使命召唤手游国际服服务器密码
数据库latin1
做好网络安全检查的
网络技术题及答案解析
软件开发要求 鲁棒性
为什么服务器端口全开者
遵化专业性软件开发
数据库服务断开
orko数据库
qq imap 服务器
中国云集网络安全大会
校园网络安全内容摘抄1000字
嘉定区大型网络技术收费
网络安全考研方向
z5x搭载的是什么网络技术
网络安全应急处置程序
病例登记系统数据库
服务器管理岗位
观网络安全知识讲座观后感