Webpack学习笔记(4)

1.缓存

可以通过命中缓存降低网络流量,是网站加站速度更快。

然而在部署新版本时,不更改资源的文件名,浏览器可能认为你没有更新,所以会使用缓存版本。

由于缓存存在,获取新的代码成为问题。

接下来将配置webpack使得生成的文件会被缓存,并且变化时又能请求到新的文件。

如果文件内容改变了,文件名没变,浏览器会使用缓存,所以通过修改output的filename可以实现根据文件内容变化同时修改文件名。

在webpack.config.js修改filename配置:

2.缓存第三方库

将第三方库(如loadsh等)打包缓存到浏览器,自己的代码发生变化时才去更新,第三方代码始终使用缓存,所以就配置单独打包第三方库缓存到浏览器,利用client的长效缓存机制,命中缓存来消除请求,并减少向server获取资源,保证client代码和server代码版本一致。下面来举例实现

第三方库的特点是都在node_modules文件夹下。

在webpack.config.js配置splitChunks:

可以看到第三方库被打包为一个vendors.xxx.js文件:

将js文件放到单独的scripts文件夹下,修改一下出口文件filename即可:

相关推荐
瞎某某Blinder43 分钟前
DFT学习记录[4] 电子和空穴的有效质量计算全流程
python·学习
zhangfeng11332 小时前
Warmup Scheduler深度学习训练中,在训练初期使用较低学习率进行预热(Warmup),然后再按照预定策略(如余弦退火、阶梯下降等)衰减学习率的方法
人工智能·深度学习·学习
red_redemption4 小时前
自由学习记录(118)
学习
小猪佩奇TONY5 小时前
OpenCL 学习(5)---- OpenCL 内核和内核参数
学习
01二进制代码漫游日记5 小时前
自定义类型:联合和枚举(一)
c语言·开发语言·学习·算法
非凡ghost5 小时前
小X分身APP(手机分身类工具)
android·windows·学习·智能手机·软件需求
weixin_458872615 小时前
东华复试OJ每日3题打卡·复盘82~84
学习
昌兵鼠鼠6 小时前
LeetCode Hot100 哈希
学习·算法·leetcode·哈希算法
旖旎夜光6 小时前
哈希(14)(下)
数据结构·c++·学习
2401_848009728 小时前
Redis零基础入门学习
数据库·redis·学习