-
使用最新版本的 Webpack 和相关插件: 每个新版本的 Webpack 都会带来性能方面的改进和优化,因此始终确保你在使用最新版本。同时,更新你的相关插件也是同样重要的。
-
使用DllPlugin动态链接库: 使用DllPlugin和DllReferencePlugin来将第三方库的代码进行预打包,减少构建时间。这个是webpack自带的插件,
-

-
DllPlugin 用于创建一个单独的动态链接库,将一些库比如react、lodash 捆绑成一个DLL
-
DllReferencePlugin 使用上面生成的DLL
-
-
使用缓存: 启用 Webpack 的缓存机制,以避免重复的构建工作
-
可以在配置文件中直接配置 cache
-

-
也可以使用一些插件,
cache-loader、hard-source-webpack-plugin等
-
-
**配置别名 resolve.alias:**使用 resolve.alias 配置项,将频繁引用的模块指向绝对路径,减少模块解析的时间,webpack 在模块路径解析时,会根据配置的 alias 进行映射,从而加快解析过程。
-
缩小文件搜索范围: : 比如babel-loader插件,如果你的文件仅存在于src中,那么可以
include: path.resolve(__dirname, 'src'),当然绝大多数情况下这种操作的提升有限,除非不小心build了node_modules文件 -
合理配置 Webpack: 优化 Webpack 的配置文件,包括合理设置 entry、output、resolve、loader 和 plugin 等选项。避免不必要的配置项,以减少构建时间。
-
使用更快的 loader : 选择性能更好的 loader,或者对现有的 loader 进行优化。比如使用
thread-loader来将耗时的 loader 转换为多线程模式。 -
使用多进程/多实例构建工具 : Webpack 5 支持了更好的多进程/多实例构建,可以通过设置
parallel选项来启用。这样可以充分利用多核 CPU,加速构建过程。 -
减少文件数量和体积: 优化你的代码,尽可能减少不必要的依赖、删除未使用的代码、拆分代码块等,以减少构建的文件数量和体积。
-
减少监视文件的数量 : 尽量减少 Webpack 监视的文件数量,可以通过配置
watchOptions来实现。同时,避免使用过多的 glob 模式,以减少文件系统的访问次数。 -
使用 Tree Shaking: 使用 Tree Shaking 来移除未使用的代码,减少最终打包输出的文件体积。
-
使用 CDN: 将静态资源部署到 CDN 上,减少构建时对于静态资源的处理和打包时间
【前端工程化面试题】如何优化提高 webpack 的构建速度
我有一棵树2024-02-19 14:50
相关推荐
阿明的小蝴蝶2 分钟前
自定义桌面应用、内置系统应用与镜像代码搬运媛20 分钟前
原生websocket 双工demolimit007524 分钟前
三维 WebGIS 工具选型:加载、样式、分析、交付,一套界面能做完什么全栈项目管理程序猿32 分钟前
ArcGIS JS 基础教程(35):体元系列 - VoxelLayer 时间维度动画mantou13240 分钟前
从纯 CSR 到 SSR:用 WebComponents 做一个 Next.js 式框架 Gemkitcidy_9841 分钟前
深度拆解任务工作台架构:左右分栏、队列管理、实时刷新全方案Linye44 分钟前
告别“PRD 与原型两张皮”!我们把可交互原生组件直接嵌进了需求文档,还能双向回写 Markdowndeli00744 分钟前
RSA 为什么公开公钥也解不开?2 个质数拆开实测一遍ModyQyW1 小时前
vite-plugin-uni-pages 0.6:统一扫描规则,开发期少重启门思科技1 小时前
把 ThinkLink 接进 Home Assistant 与 Node-RED:一条 MQTT 转发器能走通的路