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 表示没有子集 就没有这个箭头了

相关推荐
杨天天.1 个月前
微信小程序原生,tdesign时间选择器,t-date-time-picker封装成组件,开始时间结束时间
微信小程序·小程序·tdesign
shadowflies1 个月前
组件库TDesign的表格<t-table>的使用,行列合并以及嵌入插槽实现图标展示,附踩坑
前端·javascript·vue.js·vue·tdesign
LoveShadowing1 个月前
TDesign引入阿里Iconfont图标库
tdesign
卡姿兰大眼猫&1 个月前
TDesign 步骤条用法
tdesign
sunly_1 个月前
TDesign:TDAlertDialog消息确认弹窗
tdesign
sunly_1 个月前
TDesign:Switch开关
数据库·mysql·tdesign
小林学习编程2 个月前
TDesign了解及使用
tdesign
天天打码3 个月前
TDesign腾讯高保真Axure RP中后台交互模板及元件组件库
交互·axure·tdesign
包淼淼4 个月前
微信小程序自定义navigationBar顶部导航栏(背景图片)适配所有机型,使用tdesign-miniprogram t-navbar设置背景图片
微信小程序·小程序·tdesign
Hsu yiqi6 个月前
TDesign组件库日常应用的一些注意事项
tdesign