Files
layui/package/document-component/src/document/zh-CN/components/tree.md
2022-06-25 20:10:12 +08:00

5.2 KiB

::: anchor :::

::: title 基本介绍 :::

::: describe 树形组件一般用于展示具有层级关系的数据 :::

::: title 基础使用 :::

::: demo 使用 lay-tree 标签, 创建树形组件, @node-click 监听节点点击。

<script setup> import { ref } from 'vue'; const data = ref([{ title: '一级1', id: 1, field: 'name1', checked: true, spread: true, children: [{ title: '二级1-1 可允许跳转', id: 3, field: 'name11', href: 'https://www.layui.com/', children: [{ title: '三级1-1-3', id: 23, field: '', children: [{ title: '四级1-1-3-1', id: 24, field: '', children: [{ title: '五级1-1-3-1-1', id: 30, field: '' }, { title: '五级1-1-3-1-2', id: 31, field: '' }] }] }, { title: '三级1-1-1', id: 7, field: '', children: [{ title: '四级1-1-1-1 可允许跳转', id: 15, field: '', href: 'https://www.layui.com/doc/' }] }, { title: '三级1-1-2', id: 8, field: '', children: [{ title: '四级1-1-2-1', id: 32, field: '' }] }] }, { title: '二级1-2', id: 4, spread: true, children: [{ title: '三级1-2-1', id: 9, field: '', disabled: true }, { title: '三级1-2-2', id: 10, field: '' }] }, { title: '二级1-3', id: 20, field: '', children: [{ title: '三级1-3-1', id: 21, field: '' }, { title: '三级1-3-2', id: 22, field: '' }] }] }, { title: '一级2', id: 2, field: '', spread: true, children: [{ title: '二级2-1', id: 5, field: '', spread: true, children: [{ title: '三级2-1-1', id: 11, field: '' }, { title: '三级2-1-2', id: 12, field: '' }] }, { title: '二级2-2', id: 6, field: '', children: [{ title: '三级2-2-1', id: 13, field: '' }, { title: '三级2-2-2', id: 14, field: '', disabled: true }] }] }, { title: '一级3', id: 16, field: '', children: [{ title: '二级3-1', id: 17, field: '', fixed: true, children: [{ title: '三级3-1-1', id: 18, field: '' }, { title: '三级3-1-2', id: 19, field: '' }] }, { title: '二级3-2', id: 27, field: '', children: [{ title: '三级3-2-1', id: 28, field: '' }, { title: '三级3-2-2', id: 29, field: '' }] }] }]); function handleClick(node) { clickNode.value = node } </script>

:::

::: title 选择节点 :::

::: demo 使用 showCheckbox 属性开启复选框

<script setup> import { ref } from 'vue'; const checkedKeys = ref([30,31]) const showCheckbox = ref(true) </script>

:::

::: title 关闭连线 :::

::: demo 使用 showLine 属性关闭节点连线

<script setup> import { ref } from 'vue'; const showLine=ref(false) </script>

:::

::: title 过渡动画 :::

::: demo 使用 collapse-transition 属性开启展开过渡动画

<script setup> import { ref } from 'vue'; </script>

:::

::: title 定义标题 :::

::: demo 使用 title 插槽自定义节点标题

{{ data.id }} <script setup> import { ref } from 'vue'; </script>

:::

::: title Tree 属性 :::

::: table

Name Description Accepted Values
data 树型组件数据,类型 TreeData | TreeData[] null
showCheckbox 是否显示复选框 false
onlyIconControl 是否仅允许节点左侧图标控制展开收缩 false
showLine 是否开启连接线 true
checkedKeys(v-model:checkedKeys) 开启 showCheckbox 后, 选中的节点 []
collapse-transition 是否开启展示收起动画 false

:::

::: title Tree 数据 :::

::: table

Name Description Accepted Values
id 唯一值 -
title 节点名称 -
children 子节点 []
disabled 该节点是否禁用 false
spread 该节点是否展开 false

:::

::: title Tree 事件 :::

::: table

Name Description Accepted Params
node-click 节点 click 事件 --

:::

::: contributor transition :::

::: previousNext transition :::