记element-ui树形控件懒加载实现

概要

如何通过vue2+element-ui实现树形控件的懒加载

整体架构流程

1.树形控件的组件代码

复制代码
            <el-tree
              :data="treeData"
              :props="defaultProps"
              :load="load"
              lazy
              @current-change="handleNodeClick"
              :expand-on-click-node="true"
              :highlight-current="true"
              ref="tree"
              node-key="id"
            >
              <span class="custom-tree-node" slot-scope="{ data }">
                <span>{{ data.name}}</span>
              </span>
            </el-tree>

2.加载子树数据的方法

复制代码
 async loadNode(node, resolve) {
      if (node.level == 0) {
        //若根目录的接口和子节点数据不同则需要加判断
      } else {
        let arr = [];
        arr = node.data.fathers;
        let treeData = await this.getTreeAction();
        return resolve(treeData);
      }
    },

3.子节点接口

复制代码
 getTreeAction(arr, nextLayerIsVariable) {
      return new Promise((resolve, reject) => {
        resolve(data);
        //data是通过后端接口获取到的数据            
      });
    },

小结

记一次加载element-ui树形控件的实现方式

相关推荐
墨绿色的摆渡人15 分钟前
论文笔记(七十五)Auto-Encoding Variational Bayes
前端·论文阅读·chrome
今晚吃什么呢?36 分钟前
前端面试题之CSS中的box属性
前端·css
我是大龄程序员39 分钟前
Babel工作理解
前端
《独白》1 小时前
将图表和表格导出为PDF的功能
javascript·vue.js·ecmascript
CopyLower1 小时前
提升 Web 性能:使用响应式图片优化体验
前端
南通DXZ1 小时前
Win7下安装高版本node.js 16.3.0 以及webpack插件的构建
前端·webpack·node.js
Mintopia2 小时前
深入理解 Three.js 中的 Mesh:构建 3D 世界的基石
前端·javascript·three.js
前端太佬2 小时前
暂时性死区(Temporal Dead Zone, TDZ)
前端·javascript·node.js
Mintopia2 小时前
Node.js 中 http.createServer API 详解
前端·javascript·node.js
艾克马斯奎普特2 小时前
Vue.js 3 渐进式实现之响应式系统——第三节:建立副作用函数与被操作字段之间的联系
javascript·vue.js