当前位置: 首页 > news >正文

vue 性能优化

data 层级不要太深

data 层级太深会增加响应式监听的计算,导致页面初次渲染时卡顿。

合理使用 v-show 和 v-if

  • 频繁切换时,使用 v-show
  • 无需频繁切换时,使用 v-if

合理使用 computed

computed 有缓存,data 不变时不会重新计算,可以避免不必要的计算,从而提升性能

v-for 中加 key

diff 算法中会将 tag 和 key 相同的标签视为同一节点,从而避免不必要的渲染。
若无 key ,则 v-for 中的所有节点,都会删除后重新渲染,非常耗费性能!

避免 v-for 和 v-if 同时使用

v-for 的优先级高于 v-if ,同时使用时,会导致每次遍历时,都触发一次 v-if 判断,造成大量不必要的渲染。

及时销毁自定义事件、DOM 事件、计时器

在 beforeDestory 生命周期中执行,避免内存泄露,页面会越来越卡,最终卡死。

合理使用异步组件

  • 加载大组件,如图表、富文本编辑器等
  components: {// 异步加载子组件(如 v-if 的值为true 时,才开始加载此组件,减少了页面初次渲染的时间),特别适用于耗时的复杂大型组件,如富文本编辑器等。Child: () => import("./child.vue"),},
  • 路由异步加载
{path: '/dic',name: '速查手册', component: () => import('./dic/index')},

合理使用缓存组件 keep-alive

需要缓存组件时使用,如多个静态 tab 页的切换,可以避免不必要的渲染,提升 vue 性能。

详见博文 https://blog.csdn.net/weixin_41192489/article/details/112875654

使用 vue-loader 在开发环境做模板编译(预编译)

webpack 层面的优化

待补充

前端通用的性能优化,如图片懒加载

详见 https://blog.csdn.net/weixin_41192489/article/details/136497854

使用服务端渲染 SSR

http://www.lryc.cn/news/339207.html

相关文章:

  • 互联网大厂ssp面经(操作系统:part1)
  • Android Activity 启动涉及几个进程
  • 说说你对链表的理解?常见的操作有哪些?
  • 每天五分钟深度学习:逻辑回归算法的损失函数和代价函数是什么?
  • llama-factory SFT系列教程 (二),大模型在自定义数据集 lora 训练与部署
  • C语言游戏实战(11):贪吃蛇大作战(多人对战)
  • 腾讯测试岗位的面试经历与经验分享【一面、二面与三面】
  • 手机移动端网卡信息获取原理分析
  • 无人新零售引领的创新浪潮
  • SD-WAN提升企业网络体验
  • Docker搭建Let‘s Encrypt
  • 单链表讲解
  • DFS算法系列 回溯
  • Linux C应用编程:MQTT物联网
  • 企业常用Linux文件命令相关知识+小案例
  • Istio介绍
  • 代码随想录算法训练营第四十七天|leetcode115、392题
  • 将Ubuntu18.04默认的python3.6升级到python3.8
  • Python和Java哪个更适合后端开发?
  • Python+pytest接口自动化之cookie绕过登录(保持登录状态)
  • 什么数据集成(Data Integration):如何将业务数据集成到云平台?
  • 国外EDM邮件群发多少钱?哪个软件好?
  • C语言入门算法——回文数
  • OceanBase—操作实践
  • 智慧用电安全管理系统
  • Rust语言入门第二篇-Cargo教程
  • 测试用例的编写方式
  • HarmonyOS实战开发-状态管理、通过使用页面级的状态变量 和应用级的状态变量 来实现应用的状态管理。
  • 【Java开发指南 | 第二篇】标识符、Java关键字及注释
  • 3D可视化技术:研发基地的科技新篇章