2024.11.21今天我学习了如何使用vue-easy-tree,在使用el-tree组件的过程中,如果子节点的数据太多会导致页面渲染卡顿,导致点击其他子节点也会出现这种情况,一开始想用懒加载实现,但是懒加载只是防止请求过慢,而进行点击子节点进行请求数据,数据过多还是会导致页面卡顿,后来使用了vue-easy-tree虚拟树组件,生成一个虚拟的固定高度,虚拟滚动只渲染了可视区域的节点,代码如下:

1.安装vue-ease-tree组件

 npm install @wchbrad/vue-easy-tree

2.main.js全局引入,也可以引入到指定页面

import VueEasyTree from "@wchbrad/vue-easy-tree";
import "@wchbrad/vue-easy-tree/src/assets/index.scss"
Vue.component('VueEasyTree', VueEasyTree)

3.必须要设置一个固定高度height,其他用法和el-tree一样

            <vue-easy-tree
              style="height: 40vh;overflow-y: auto;"
              show-checkbox
              :data="tree_data"
              :props="props"
              height="calc(40vh)"
              node-key="key"
              @check=""
              :filter-node-method=""
              ref="tree"
            >
            </vue-easy-tree>

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐