前端性能优化

这篇具有很好参考价值的文章主要介绍了前端性能优化。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前端性能优化可以从以下几个方面来看:

一、打包体积方面:—体积小可以减少网络传输时间

vite:https://www.duidaima.com/Group/Topic/Vue/12079
https://blog.csdn.net/qq_36017964/article/details/97934911

工具:vuecli中配置webpack-bundle-analyzer插件,此插件在执行打包命令成功后通过图形化界面展示各个模块的大小)

const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin; //引入
config.plugins.push(new BundleAnalyzerPlugin());  //配置

(1)、CDN加速:通过打包后的图形化界面,我们可以看到第三方库的占用体积,使用CDN具体做法如下:

第一:在webpack设置中添加externals,忽略不需要打包的库。

前端性能优化,前端,性能优化:#### 第二:在index.html中使用cdn引入。
前端性能优化,前端,性能优化

(2) 配置拆包:

前端性能优化,前端,性能优化

(3) 生产环境打包去除console.log,注释,debugger

前端性能优化,前端,性能优化

(4) 关闭source map:默认情况下会生成source map文件,该文件记录了编译后的代码与原始代码之间的映射关系。关闭source map可以减小打包体积。

(5) 按需加载组件:对于只有部分页面或功能才会被使用到的组件,可以使用动态导入来进行按需加载,从而减小初始化时的bundle大小

前端性能优化,前端,性能优化

const MyComponent = () => import('./MyComponent.vue'); // 根据路由配置自动按需加载

6、图片压缩—配置image-webpack-loader插件

   (后管未配,app配了可参考)

前端性能优化,前端,性能优化

7、Gzip压缩—vue.config.js配置(可以减少前端打包的体积)

注意:前端webpack配置Gzip压缩和服务端启用Gzip压缩是针对不同环节的压缩处理
前端webpack配置插件进行Gzip压缩是:打包构建时,对生成的静态资源文件(如JavaScript、CSS、HTML等)进行Gzip压缩,生成对应的.gz文件
服务端启用Gzip压缩:是在接收到客户端的HTTP请求后,对服务器端的资源(如HTML、CSS、JavaScript、图片等)进行压缩,然后再将压缩后的内容发送给客户端。

总体来说,前端webpack配置Gzip压缩是针对静态资源文件的压缩处理,而服务端启用Gzip压缩是针对服务器端资源的压缩处理,两者结合可以更有效地减少网络传输数据的大小,提高页面加载速度。

前端webpack配置Gzip压缩如下:

前端性能优化,前端,性能优化

8、抽离 css 支持按需加载

前端性能优化,前端,性能优化

9、配置prefetch 和 preload插件—如果不删除的话,则会在 index.html 里面加载 无用的 js 文件,如下图:多加载了6个文件;所以删除以上两个插件可以减少不必要的网络请求,因为此两个插件会在页面空闲时间预加载

前端性能优化,前端,性能优化

配置删除如下:

 //删除prefetch和preload插件,减少不必要的网络请求,因为此两个插件会在页面空闲时间预加载
    config.plugins.delete('prefetch').delete('preload');

10、webpack的TreeShaking,不打包未用到的文件(webpack打包构建时从入口文件开始找依赖关系,将所有应用到的文件构成一个依赖图,不打包没有依赖关系的文件)

二、从HTTP和网络层面优化—核心需要减少网络延迟,提高页面加载效率

1、减少请求次数:合并和减少静态资源的数量,从而减少页面加载时的HTTP请求次数,从而提高页面加载速度(精灵图、BFF架构模式在BFF层对接口进行聚合、合理利用本地缓存–将一些频繁请求且内容不变化的数据使用本地缓存);
2、压缩资源减少文件大小:可以减少网络传输时间—图片优化(使用WebP格式)、js和html和css等资源体积优化
3、CDN加速:使用CDN(内容分发网络)来缓存静态资源,使用户可以从距离较近的服务器获取资源,从而减少网络延迟,提高加载速率
4、使用HTTP/2:HTTP/2协议支持多路复用,头部压缩和服务器推送等特性,可以减少网络延迟和提高页面加载速度。
5、使用浏览器缓存(强缓存和协商缓存):响应数据中设置缓响应头,如Expires、Cache-Control等,可以减少不必要的网络请求,提高页面加载速度。
6、使用Gzip压缩:在服务器端启用Gzip压缩,可以减小传输数据的大小,减少网络传输时间。
7、延迟加载:对于一些非关键资源,可以延迟加载,等页面主要内容加载完成后再加载这些资源,从而提高页面初始加载速度。
8、使用预加载:对于一些即将要使用的资源,可以使用预加载标签进行预加载,从而提前获取资源,减少加载时间。
9、使用服务端渲染(SSR):对于一些需要频繁更新的页面,可以使用服务端渲染来减少前端渲染的时间,提高页面加载速度。

三、DOM层面:核心是要减少DOM操作,减少页面的回流和重绘(V3中已经优化的够彻底了,例如更先进的diff算发,异步更新队列等)

1、减少DOM操作:可以通过合并多个DOM操作、使用文档片段(DocumentFragment)等方式来减少DOM操作次数。
2、使用事件委托:将事件处理程序绑定在父元素上,利用事件冒泡机制来处理子元素的事件,可以减少事件处理程序的数量,提高性能。
3、懒加载:对于一些不是立即需要的DOM元素(如图片、视频等),可以采用懒加载的方式,延迟加载这些元素,减少页面初始加载时的压力。
4、最小化重排和重绘:避免频繁的样式更改,合理使用CSS,减少引起页面重排和重绘的操作,提高性能。

四、项目中

1、组件库的按需加载
2、keep-alive缓存组件
3、v-for中的key
4、合理v-if和v-for
5 、对复杂计算结果使用computed计算属性缓存

具体问题需要具体分析:

(1)股票的曲线图
(2)首页接口多怎么优化
(3)页面数据量大怎么优化
(4)一个接口耗时时间太长怎么优化(T+N额号满的问题)
(5)合同合成(分批次合成,当数量小于5个时)文章来源地址https://www.toymoban.com/news/detail-795910.html

到了这里,关于前端性能优化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 关于前端性能优化

    前端性能优化是提高网站加载速度、响应速度和用户体验的关键步骤之一。以下是一些常见的前端性能优化方法: 压缩和合并资源: 使用压缩工具(如UglifyJS、Terser)来压缩JavaScript代码。 使用CSS压缩工具(如CSSNano、csso)来压缩CSS代码。 将多个CSS和JavaScript文件合并为单个文

    2024年02月21日
    浏览(34)
  • 前端首屏性能优化

    代码压缩 GZIP 图片压缩 代码拆分 http强缓存 Sevice Worker 本地存储localStorage 合并请求 CDN DNS Prefetch 按需加载 懒加载 预加载 客户端内H5页面可考虑离线等方式 内容直出 js外链放在底部 css外链放在顶部 减少dom数量 使用webworker 长任务分片执行 减少回流重绘 减低css选择器复杂性

    2024年02月16日
    浏览(39)
  • 前端如何做好性能优化?

    1、谈谈你对重构的理解。 网站重构是指在不改变外部行为的前提下,简化结构、添加可读性,且在网站前端保持一致的行为。也就是说,在不改变UI的情况下,对网站进行优化,在扩展的同时保持一致的UI。 对于传统的网站来说,重构通常包括以下方面。 把表格( table)布

    2024年02月11日
    浏览(45)
  • 前端性能优化:缓存

    在快节奏的互联网时代,网站的加载速度直接影响用户体验和业务成功。而缓存作为性能优化的重要手段,可以大幅提升网页加载速度,减少服务器负担。本文将为你详解缓存的使用,帮助你优化前端性能,为用户呈现更快速、流畅的体验。 1. 什么是缓存? 缓存是指将已获

    2024年02月13日
    浏览(37)
  • 前端性能优化---样式计算

    样式计算 第一步,匹配一系列的样式选择器 第二步,取出所有匹配后的样式规则,构造RenderStyle 我们的解决思路是 减少样式计算的相互作用,即样式重新计算 什么是 Recalculate Style?在浏览器每一帧的渲染流程中,由于 DOM 增删改等因素变化,需要重新计算受影响节点的样式

    2024年02月16日
    浏览(78)
  • 前端页面性能优化指标

    优化用户体验的质量一直都是是每个Web站点长期成功的关键,网页核心的性能指标应该是随着时间的推移而不断演变的,目前谷歌浏览器公布的核心Web健康指标——Core Web Vitals包括加载体验、交互性和页面内容的视觉稳定性; 1. Largest Contentful Paint (LCP) : Web 页主要内容的加载

    2024年02月15日
    浏览(63)
  • 前端性能优化——内存问题

    过高的内存资源占用会导致 Web 应用变慢,甚至崩溃。可以通过 window.performance.memory 查看浏览器的内存限制等信息。 Web 前端开发中存在许多内存问题,下面是一些常见的内存问题: 内存泄漏:当一个对象不再被使用,但仍然占用着内存空间,就会导致内存泄漏问题。在 Web

    2024年02月16日
    浏览(44)
  • 前端性能优化

    vite:https://www.duidaima.com/Group/Topic/Vue/12079 https://blog.csdn.net/qq_36017964/article/details/97934911 (1)、CDN加速:通过打包后的图形化界面,我们可以看到第三方库的占用体积,使用CDN具体做法如下: 第一:在webpack设置中添加externals,忽略不需要打包的库。 :#### 第二:在index.html中使用cdn引入。 (

    2024年01月17日
    浏览(45)
  • webpack优化前端框架性能

    提升开发体验 提升打包构建速度 减少代码体积 优化代码运行性能 提升开发体验使用 SourceMap 问题:正常情况下,开发环境不输出dist 文件 直接保存在内存中,浏览器控制台source中可以看到, 但是报错提示行数不正确,它会以打包后的行数进行提示 解释:sourceMap 可以生成源

    2024年02月15日
    浏览(47)
  • 前端性能优化进阶版

    1、使用 Web Workers 和 Service Workers 来提高并行性和离线缓存。 使用 Web Workers 和 Service Workers:可以使用 Web Workers 将计算密集型任务放到其他线程中执行,以避免卡顿和阻塞 UI 线程。Service Workers 可以用于缓存网页资源以提高加载速度和离线访问能力。 2、使用 HTTP/2 来减少请求

    2023年04月27日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包