Webpack学习笔记(8)

多页面应用

entry

entry可以配置为字符串、数组、对象(可以分开打包)

上图,app2.js和app.js会打包到一个文件main.js中;lodash会被打包到lodash.js。

如果app2.js和app.js使用了lodash,为之增加依赖,lodash单独打包,app3也依赖lodash并单独打包:

使用htmlwebpackplugin可以实现模板的自定义:

index.html为模板,在index.html中可以获取,inject为生成scripts等引入标签放在<body>位置,chunks为打包的文件:

不同页面不同打包:

指定打包文件位置:

Tree shaking

用于描述移除未引用的代码(死代码),内部方法如果没有使用则不打包,第三方库引入就会打包

sideEffects

true:所有代码都有副作用,不要随意删除(默认)

false:可以删除;

数组:存放有副作用的:下图即css文件有副作用。

渐进式网络应用程序PWA

非离线环境下运行

重新启动服务时,在dist生成新代码:

添加workbox

npm i workbox-webpack-plugin -D:

clientsClaim快速启用service-worker

skipWaiting跳出等待,不允许留下任何旧的service-worker

注册service worker

实现离线浏览页面的功能(浏览器将页面缓存了)

判断一下是否注册成功

相关推荐
淡忘旧梦1 分钟前
词错误率/WER算法讲解
人工智能·笔记·python·深度学习·算法
Dream Algorithm3 分钟前
POS机的机制,以及流量是怎么传送的
笔记
狐5712 分钟前
2026-01-21-牛客每日一题-静态区间和(前缀和)
笔记·算法
佳哥的技术分享1 小时前
Function<T, R> 中 apply,compose, andThen 方法总结
java·学习·r语言
Yu_Lijing1 小时前
基于C++的《Head First设计模式》笔记——状态模式
c++·笔记·设计模式
阳明Coding1 小时前
golang从入门到通天—数据库操作(gorm框架使用)(最简单最详细的golang学习笔记)
笔记·学习·golang
AI视觉网奇1 小时前
ue5 开发 web socket server 实战2026
c++·学习·ue5
嗯嗯=1 小时前
STM32单片机学习篇6
stm32·单片机·学习
2301_797312261 小时前
学习Java42天
java·开发语言·学习
找了一圈尾巴1 小时前
智能体自演进框架-ACE(论文学习)
学习·提示词