DLL是什么,用它来干啥?
DLL(Dynamic Link Libray)原来特指windows系统中实现共享函数库的一种方式,扩展名通常为.dll。玩过老windows游戏的同学应该对这种文件不陌生,很多游戏的安装盘下就有很多.dll的文件。DLL通常是已经编译、链接的二进制文件,方便程序直接调用。
前端应用场景
在大型项目的开发过程中,往往会用到很多公共库,公共库的内容不同于业务代码,在很长的一个时间周期内都不会有改动。这部分公共库通常会被打包在commonChunk中,webpack配置节选如下:
optimization: {
splitChunks: {
minSize: 1000000,
cacheGroups: {
vendor: {
name: "common",
test: /[\\/]node_modules[\\/]/,
chunks: "initial",
minSize: 30000,
minChunks: 1,
priority: 8
}
},
}
},
这样可以把长时间不变的公共包内容打包进一个名为common的chunk中,同业务代码进行隔离,生成稳定的缓存key,以便浏览器端实现缓存。但是这也带来一个问题:尽管用户端实现了缓存,但是我们在打包的时候,webpa