webpack之利用缓存提升二次构建速度

1.babel-loader开启缓存

官方文档中的说明:https://webpack.docschina.org...
cacheDirectory:默认值为 false。当有设置时,指定的目录将用来缓存 loader 的执行结果。以后的 webpack 构建,将会尝试读取缓存,来避免在每次执行时,可能产生的、高性能消耗的 Babel 从新编译过程(recompilation process)。若是设置了一个空值 (loader: 'babel-loader?cacheDirectory') 或者 true (loader: 'babel-loader?cacheDirectory=true'),loader 将使用默认的缓存目录 node_modules/.cache/babel-loader,若是在任何根目录下都没有找到 node_modules 目录,将会降级回退到操做系统默认的临时文件目录。
开启缓存以后,能够在node_modules下看到有一个.cache文件node

发现官网说的方式并不生效,须要修改为写在option里面才生效
image.pngwebpack

2.terser-webpack-plugin开启缓存

image.png
其中parallel是 使用多进程并行运行可提升构建速度,明显提高构建速度
cache 启用文件缓存。缓存目录的默认路径:node_modules/.cache/terser-webpack-plugin。
此配置 在使用 UglifyJSWebpackPlugin时同理。web

3.hard-source-webpack-plugin

image.png
用于为模块提供中间缓存步骤 存在node_modules/.cache/hard-source下,能明显提高构建的速度!!缓存

相关文章
相关标签/搜索