element-ui 的el-tree控件动态加载更新

element-ui官方文档(官方文档)提供了懒加载自定义叶子节点,主要是通过resolve()来返回。

使用:

  1. 页面上先引入element ui相关js和css.
  2. el-tree基础用法:

在这里插入图片描述

<el-tree :data="data" :props="defaultProps" @node-click="handleNodeClick"></el-tree>

<script>
  export default {
   
    data() {
   
      return {
   
        data: [{
   
          label: '一级 1',
          children: [{
   
            label: '二级 1-1',
            children: [{
   
              label: '三级 1-1-1'
            }]
          }]
        }, {
   
          label: '一级 2',
          children: [{
   
            label: '二级 2-1',
            children: [{
   
              label: '三级 2-1-1'
            }]
          }, {
   
            label: '二级 2-2',
            children: [{
   
              label: '三级 2-2-1'
            }]
          }]
        }, {
   
          label: '一级 3',
          children: [{
   
            label: '二级 3-1',
            children: [{
   
              label: '三级 3-1-1'
            }]
          }, {
   
            label: '二级 3-2',
            children: [{
   
              label: '三级 3-2-1'
            }]
          }]
        }],
        defaultProps: {
   
          children: 'children',
          label: 'label'
        }
      };
    },
    methods: {
   
      handleNodeClick(data) {
   
        console.log(data);
      }
    }
  };
</script>

对于数据不多的情况下可以后台直接组装这种格式返回,但由于我这边的物资编码数据量较大(六千多条),如果全部一次性返回会导致页面渲染时速度缓慢,影响体验。所以这边采用动态加载的方式实现,初始时只查询一级节点,之后每点击一次传此节点的id去查询它下面的节点。

  1. 实际应用

引入el-tree组件:设置相关属性

<!-- 搜索与筛选 -->
    <div class="mysearch">
      <div class="search-header row">
        <div class="col-12 myfrom row">
          <input type="search" placeholder="搜索物资设备服务编码/物资名称" class="col-10" v-model="searchParam">
          <i 
          v-show="circle"
          class
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值