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即可:

相关推荐
Fantasydg6 小时前
Servlet学习
学习·servlet
雍凉明月夜7 小时前
Ⅰ人工智能学习的核心概念概述+线性回归(1)
人工智能·学习
2301_783360137 小时前
R语言 | 带重要性相关热图和贡献图如何解释?如何绘制随机森林计算结果重要性及相关性图?[学习笔记]
学习·随机森林·r语言
潲爺8 小时前
Java IDEA学习之路:第九周课程笔记归纳
java·学习·intellij-idea
石像鬼₧魂石8 小时前
192.168.1.4(Windows 靶机)渗透测试练习全流程(详细步骤)
windows·学习
GLAB-Mary8 小时前
HCIE最优规划路线:如何系统性学习华为认证?
学习·华为·华为认证·hcie·数通
月下倩影时8 小时前
视觉学习——卷积与神经网络:从原理到应用(量大管饱)
人工智能·神经网络·学习
d111111111d9 小时前
STM32外设学习-串口数据包笔记-(程序)
笔记·stm32·单片机·嵌入式硬件·学习
zhoutanooi10 小时前
安卓bp文件编译学习
android·学习
蓝桉~MLGT11 小时前
Python学习历程——Python面向对象编程详解
开发语言·python·学习