【面试 - 页面优化举例】页面跳转卡顿问题解决 - 页面跳转速度优化

为何要优化

页面A跳转到也页面B时,页面出现卡顿情况:

  • 【问题】页面A → 页面B时,页面B进入到了 created 钩子后过了六七秒才进入到 mounted 钩子;
  • 【分析经过】很明显是 页面渲染速度太慢 导致页面卡顿;
  • 【原因】一系列排查后,发现是 el-tree 部门树 数据过多 导致的页面渲染过慢。

如何优化

优化1 - 懒加载

el-tree 数据懒加载,详见 懒加载自定义叶子节点

  • 正常使用 el-tree 组件时使用懒加载没问题
  • 遇到一个很麻烦的问题:
    • 我们的部门树用的公司以 el-tree 为基础封装的部门树组件(会先把部门树数据传到 EleFormTree 组件内,且部门树数据必传),因为还是得传所有的部门树数据,使用懒加载是没有实际效果的,重新写组件有点浪费时间;
    • 偶然间发现 页面B 中部门树是 默认全部展开,如果 不默认展开就不会渲染未展开节点,因此有了 优化2

优化2 - el-tree 子节点默认不展开

el-tree 组件中属性 default-expand-all 设置为 false 默认不展开所有子节点

  • 这样就可以避免数据过多(所有子节点都渲染),导致渲染过慢问题。
  • 子节点展开前/展开后dom展示
    • 在这里插入图片描述
    • 在这里插入图片描述

相关推荐

  1. el-select选项过多导致页面,路由

    2024-06-18 21:32:08       32 阅读
  2. vue怎么页面

    2024-06-18 21:32:08       20 阅读
  3. 微信小程序:页面

    2024-06-18 21:32:08       43 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-18 21:32:08       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-18 21:32:08       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-18 21:32:08       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-18 21:32:08       20 阅读

热门阅读

  1. token无感刷新

    2024-06-18 21:32:08       4 阅读
  2. 【HarmonyOS NEXT 】鸿蒙detectBarcode (图像识码)

    2024-06-18 21:32:08       5 阅读
  3. Flink 计数器Accumulator

    2024-06-18 21:32:08       6 阅读
  4. MySQL触发器基本结构

    2024-06-18 21:32:08       8 阅读
  5. Roboflow对YOLO数据集、标注、训练、下载

    2024-06-18 21:32:08       8 阅读
  6. Bean 的生命周期

    2024-06-18 21:32:08       5 阅读
  7. web前端开发哪个城市:探索最佳发展地

    2024-06-18 21:32:08       9 阅读
  8. Linux中的进程控制

    2024-06-18 21:32:08       7 阅读
  9. 高并发系统中面临的问题 及 解决方案

    2024-06-18 21:32:08       4 阅读
  10. Vue 3 的 setup 函数使用及避坑指南

    2024-06-18 21:32:08       6 阅读
  11. leetcode-11-二叉树前中后序遍历以及层次遍历

    2024-06-18 21:32:08       6 阅读
  12. API接口被刷 如何解决

    2024-06-18 21:32:08       6 阅读
  13. 机器学习中的神经网络入门

    2024-06-18 21:32:08       6 阅读
  14. C++中的访问者模式

    2024-06-18 21:32:08       4 阅读
  15. 双指针练习:和为s的两个数字

    2024-06-18 21:32:08       5 阅读