主机资讯

我真的很想分享这个风骚的「首屏优化」方案(webpack配置虚拟空间)

2024-11-11 12:15:32 主机资讯 浏览:16次


我真的很想分享这个风骚的「首屏优化」方案

优化想法萌生场景介绍简单介绍下,笔者负责的项目通过找运维进行黑盒操作,开启服务器gzip的资源加载方式,所有资源都进行gzip压缩了。

怎样令webpack的构建加快十倍,DllPlugin的用法

1、DllPlugin 先来看官方介绍 “DllPlugin”插件用于独立配置的webpack中,创建专门的dll-only-bundle。它创建一个manifest.json文件,用于指导[DllReferencePlugin](DllReferencePlugin)映射依赖关系。总结来说,其主要目的是分散bundle包,加快编译过程。

2、对于稳定第三方库或框架,利用DLLPlugin将它们提前打包成独立文件,避免每次构建重复打包,提升打包效率。引入HappyPack插件,将转译任务分解至多个子进程并行处理,加速编译过程。通过DefinePlugin插件,将环境变量注入Webpack构建中,消除开发与生产环境间的冗余代码。

3、webpack 执行预处理文件时单线程的,我们可以使用 happypack 来多线程处理文件。修改 webpack.base.js 文件 babel-plugin-dynamic-import-node 插件是使 import() 替换成 require 编译 修改 .babelrc 文件 注意 :使用插件 build 后没有 chunk files 文件。

4、编译速度优化: - autodll-webpack-plugin:将第三方库打包成DLL文件,减小主文件体积,提高构建速度。通过webpack命令生成DLL文件,并在项目中引用。 - HardSourceWebpackPlugin:创建内存缓存,仅重新构建已更改的模块,加快构建速度。

5、优化`mainFields`设置,减少Webpack在导入文件时的搜索步骤。一般推荐使用`main`字段,以提升效率。优化`resolve.extensions`配置 合理配置`extensions`,减少导入文件时的匹配步骤,避免无谓的搜索,提升性能。

webpack-打包优化方案

使用babel-minify-webpack-plugin插件可以帮助减少json文件的体积。安装插件之后,在webpack配置文件中添加如下内容plugins:[newBabiliMinifyPlugin()]这样就可以有效地减少json文件的体积,从而提高构建性能和减少服务器空间消耗。

代码分割技术,如入口配置、动态加载和splitChunks插件,是优化打包性能的关键。splitChunks插件能自动提取公共代码,减少重复加载。此外,Tree Shaking技术可以帮助移除未使用的代码块,进一步优化打包体积。在生产环境中,通过设置mode为production开启Tree Shaking。

首先,利用TerserPlugin插件进行代码压缩和混淆,有效减小文件体积。其次,通过Webpack的代码分割功能,将代码分割为更小块,并按需加载,从而提升加载效率。优化图片同样重要,使用url-loader和image-webpack-loader插件进行压缩和优化,减小图片体积。

请在这里放置你的在线分享代码

畅享云端,连接未来

爱美儿网络工作室携手三大公有云,无论用户身在何处,均能获得灵活流畅的体验