vue2中实现 TDesign 树形懒加载

之前我有写过Element ui的树形懒加载

其主要是通过load函数来实现

而TDesign也是照虎画猫

他也是主要靠load

我们先来看一个基本的组件

html 复制代码
<template>
      <t-tree :data="items" :load="load" />
</template>

<script lang="jsx">

export default {
  data() {
    return {
      items: [
        {
          label: '1',
          children: true,
        },
        {
          label: '2',
          children: true,
        },
      ],
    };
  },
  methods: {
    load(node) {
      console.log(node);
      return new Promise((resolve) => {
        setTimeout(() => {
            let nodes = [
              {
                label: '3',
                children: false,
              },
            ];
          resolve(nodes);
        }, 500);
      });
    },
  },
};
</script>

这里和Element ui不同的是 Element ui的树形load一进来就会触发一次

你可以通过load来加载根目录的数据

但TDesign是只有点击父节点才会触发 一进来是不会触发的

所以 第一级的数据 你要自己想办法弄给树形绑定的 data

像这里 我就直接将数据写给了items

如果是请求数据 你就要在生命周期里将第一级赋值给 data绑定的属性

然后我们运行项目

然后我们点击 这就会触发 load 带出下面层级的数据

我这里是直接无脑返回了

javascript 复制代码
[
	{
	  label: '3',
	  children: false,
	},
];

的数据结构 实际中 肯定还是要根据父id来的

然后呢 这个children就是来控制是否有子集的

你赋值true 他就会显示前面可以展开的那个箭头

设置false 表示没有子集 就没有这个箭头了

相关推荐
卡姿兰大眼猫&11 天前
TDesign 步骤条用法
tdesign
sunly_15 天前
TDesign:TDAlertDialog消息确认弹窗
tdesign
sunly_15 天前
TDesign:Switch开关
数据库·mysql·tdesign
小林学习编程1 个月前
TDesign了解及使用
tdesign
天天打码2 个月前
TDesign腾讯高保真Axure RP中后台交互模板及元件组件库
交互·axure·tdesign
包淼淼3 个月前
微信小程序自定义navigationBar顶部导航栏(背景图片)适配所有机型,使用tdesign-miniprogram t-navbar设置背景图片
微信小程序·小程序·tdesign
Hsu yiqi5 个月前
TDesign组件库日常应用的一些注意事项
tdesign
xiansibao6 个月前
tdesign和vue的子组件关闭是,父组件执行方法
前端·vue.js·tdesign
穿城大饼6 个月前
TDesign环境搭建-后台模板的安装和使用-构建web管理端后台系统
前端·tdesign
不秃头的UI设计师7 个月前
TDesign:腾讯企业级设计体系的UI组件库详解
ui·tdesign