主题:本条博客主要围绕webpack提高构建效率,减少打包时间。
一、CDN引入
在项目中,平常会引入一些第三方依赖,类似于echarts、jquery。这样打包后的vendor.js非常大,可以将第三方库以cdn方式引入,也可以将资源下载到服务器引入。
1.webpack配置externals
2.html中通过script标签引入资源(echarts cdn地址:https://cdn.baomitu.com/echarts)
3.import引入
4.文件大小和构建速度对比
*使用cdn引入
*未使用cdn
二、优化Loader
loader能够加载资源文件并进行特定处理,所以在查找匹配资源文件时我们可以使用exclude和include缩小搜索范围来优化效率。
三、DllPlugin
DLLPlugin和 DDLReferencePlugin通过拆分 bundles提升构建的速度。可以将特定类库提前打包然后引入。
1.单独新建配置文件webpack.dll.conf.js
2.webpack.conf.js中配置plugin
3.使用 webpack --config webpack.config.js 命令打包第三方库(生成以下文件)
4.html中引入打包好的第三方库
在这里可以使用 add-asset-html-webpack-plugin 插件将js添加到html中
四、HappyPack
node是单线程运行,所以webpack打包也是单线程。如果需要webpack同一时间处理多个任务,可以使用HappyPack。HappyPack可以将任务分给多个进程,子进程将处理结果返回给主进程。
1.安装