组件/Tree 树形
通用组件

Tree 树形

基础树形组件,支持搜索过滤、单选/多选与展开控制。

该页面由 AI 迁移生成,请谨慎使用

内容已迁移完成,但仍建议结合源码和人工评审结果使用。

Tree 树形

基础树形组件,支持搜索过滤、单选/多选与展开控制。

基础用法

示例即将加载...
<script setup lang="ts">
import { ref } from 'vue'

const query = ref('')
const value = ref()

const nodes = [
  {
    key: 'design',
    label: 'Design',
    children: [
      { key: 'design-ui', label: 'UI' },
      { key: 'design-ux', label: 'UX' },
    ],
  },
  {
    key: 'dev',
    label: 'Development',
    children: [
      { key: 'dev-web', label: 'Web' },
      { key: 'dev-app', label: 'App' },
    ],
  },
]
</script>

<template>
  <TxSearchInput v-model="query" placeholder="过滤节点" />
  <TxTree
    v-model="value"
    :nodes="nodes"
    :default-expanded-keys="['design']"
    :filter-text="query"
  />
</template>

API

TxTree Props

属性名类型默认值说明
nodesTreeNode[][]数据源
modelValuestring | number | Array<string | number>-选中值
multiplebooleanfalse是否多选
selectablebooleantrue是否可选
checkablebooleanfalse是否显示复选
disabledbooleanfalse禁用
defaultExpandedKeysArray<string | number>[]默认展开
expandedKeysArray<string | number>-受控展开
indentnumber16缩进
filterTextstring''搜索文本
filterMethod(node, query) => boolean-自定义过滤

TreeNode

字段类型说明
keystring | number唯一标识
labelstring展示文本
disabledboolean禁用
childrenTreeNode[]子节点
iconTxIconSource | string节点图标

Events

事件名参数说明
update:modelValue(value)选中变化
select({ key, node })选择节点
toggle({ key, expanded })展开切换
update:expandedKeys(keys)展开变化

Slots

名称说明
item自定义节点
empty空状态