Ant Design Vue中TreeSelect详解

<template>
  <a-tree-select
    v-model:value="value"
    style="width: 320px"
    :tree-data="treeData"
    allow-clear
    @select="selectHnader"
    search-placeholder="Please select"
  />
</template>
<script lang="ts">
import { TreeSelect } from 'ant-design-vue';
import { defineComponent, ref, toRefs, watch } from 'vue';

const treeData = [
  {
    title: '部门0-0',
    value: '0-0',
    key: '0-0',
    children: [
      {
        title: '部门0-0-0',
        value: '0-0-0',
        key: '0-0-0',
      },
    ],
  },
  {
    title: '部门0-1',
    value: '0-1',
    key: '0-1',
    children: [
      {
        title: '部门0-1-0',
        value: '0-1-0',
        key: '0-1-0',
        disabled: true, // 该值不能够选中
      },
      {
        title: '教育局',
        value: '0-1-1',
        key: '0-1-1',
      },
    ],
  },
]
export default defineComponent({
  setup() {
    //   那么它将选中部门 部门0-0-0;
    // 通过value值显示对应的title值
    const value = ref(['0-0-0']);

    // 监听,但是可能不需要
    watch(value, () => {
      console.log(value.value);
    });

    function selectHnader(value:any, node:any, extray:any){
        console.log("==>value",value); //获取的是数据源中的value值
        console.log("==>node", toRefs(node) ); // 该选中节点的属性
        console.log("==>extray",extray.selectedNodes[0].props.title); //得到显示的值
    }
    return {
      value,
      treeData,
      selectHnader
    };
  },
});
</script>

使用select事件

select 事件 被选中时调用 
function(value, node, extra)
我使用 select事件主要是得到选中的显示值
最初我还想通过递归根据id得到显示的值{哈哈。尴尬了}

posted @   南风晚来晚相识  阅读(3642)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示