webpack前端性能优化

  开发环境下: 

1.每次修改不用全部重新打包(HMR功能):

在devServer里,加 hot :true

  index.html:

index.js:

  source-map,构建源代码和构建后代码的映射,如果构建后的代码出问题,知道在哪个源代码中,便于修改。只需要在webpack.config.js中加入devtool:'source-map'

inline-只生成内联source-map,只有一个source-map

hidden:隐藏源代码

eval :每一个文件都生成对应source-map

nosource:全部隐藏

cheap:只显示错误到行

module: 将loader的source map加入

生产环境:

1.oneOf

由于文件会把所有的rules都走一遍,所以,需要给给些规则加oneOf[...]:而把需要两次处理的如对js的语法检查放在最开始。

2.缓存优化:babel缓存、源代码缓存

 文件资源缓存:强缓存更新不及时,所以使用hash 给文件取个别名,如果文件改了文件名就改了,会重新请求资源。但是打包导致所有文件hash都变了。资源全部重新申请。需要用到chunkHash,但是同一个chunkhash的其他文件也会改名。最后使用contenthash,只有本文件改了才重新请求。

3. tree shaking:去除没有使用的代码

前提:使用ES6模块化、开启production  环境

4.代码分割--》实现并行加载、按需加载

1.

2.

 3.

5.懒加载和预加载:

懒加载:文件需要才会加载。把需要懒加载的文件单独分割,将import放在某个异步函数的回调里(如click)。不会重复加载,只有第一次加载,后面就用缓存中的文件了

预加载:webpackPrefetch:true   文件一开始就被加载了,只是在其他必须文件加载完后偷偷加载的。

 6.PWA:像APP一样可以离线访问

 (使用方法不讲了,兼容性不太好)

 7.多进程打包,加快打包速度(放在某个loader后面):

 8.externals,资源原本是用连接引入的,防止打包成我们自己的文件

 

 DLL(第三方库单独打包,只需要打包一次):

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
为了优化前端性能,Webpack可以采取多种措施。首先,通过代码压缩、合并和缓存控制,可以减少文件大小并提高加载速度。例如,可以使用Webpack的压缩插件(如UglifyJS)来压缩JavaScript代码,并使用提取公共代码的功能来减少重复代码的加载。这样可以减小文件体积并提升页面加载速度。 其次,Webpack还支持使用ES6或CoffeeScript等高级语言来编写源码,并将其构建成浏览器支持的ES5代码,从而提高开发效率和代码质量。这可以通过使用Babel等工具和Webpack的loader来实现。 此外,Webpack还支持CSS的压缩。可以使用插件(如css-minimizer-webpack-plugin)来去除无用的空格,减小CSS文件的大小。这样可以提高页面的加载速度。 最后,对于HTML文件,Webpack也可以进行压缩。可以使用插件(如html-minimizer-webpack-plugin)来去除HTML文件中的无用空格、注释等,从而减小文件大小。这样可以加快页面加载速度。 综上所述,通过使用Webpack的各种优化手段,可以有效地提升前端项目的性能,加快页面加载速度,提高用户体验。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [【前端知识之webpackwebpack如何优化前端性能](https://blog.csdn.net/weixin_44337386/article/details/125845074)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [webpack学习教程之前端性能优化总结](https://download.csdn.net/download/weixin_38656364/14902051)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值