ant-design-vue的树形控件获取复选框选中的节点有那些
时间: 2023-07-16 16:16:09 浏览: 168
ant-design-vue的树形控件中,如果想要获取复选框选中的节点,可以使用以下方法:
1. 使用ref属性获取tree组件的实例,然后通过调用getCheckedKeys方法获取选中的节点的key值数组。
```html
<template>
<a-tree ref="tree" :checkable="true" :tree-data="treeData"></a-tree>
<button @click="getCheckedNodes">获取选中节点</button>
</template>
<script>
export default {
data() {
return {
treeData: [
{
title: '节点1',
key: '1',
children: [
{ title: '节点1.1', key: '1-1' },
{ title: '节点1.2', key: '1-2' }
]
},
{
title: '节点2',
key: '2',
children: [
{ title: '节点2.1', key: '2-1' },
{ title: '节点2.2', key: '2-2' }
]
}
]
}
},
methods: {
getCheckedNodes() {
const checkedKeys = this.$refs.tree.getCheckedKeys()
console.log('选中的节点key值数组:', checkedKeys)
}
}
}
</script>
```
2. 使用ref属性获取tree组件的实例,然后通过调用getCheckedNodes方法获取选中的节点的Node对象数组。
```html
<template>
<a-tree ref="tree" :checkable="true" :tree-data="treeData"></a-tree>
<button @click="getCheckedNodes">获取选中节点</button>
</template>
<script>
export default {
data() {
return {
treeData: [
{
title: '节点1',
key: '1',
children: [
{ title: '节点1.1', key: '1-1' },
{ title: '节点1.2', key: '1-2' }
]
},
{
title: '节点2',
key: '2',
children: [
{ title: '节点2.1', key: '2-1' },
{ title: '节点2.2', key: '2-2' }
]
}
]
}
},
methods: {
getCheckedNodes() {
const checkedNodes = this.$refs.tree.getCheckedNodes()
console.log('选中的节点Node对象数组:', checkedNodes)
}
}
}
</script>
```
需要注意的是,如果树形控件开启了异步加载子节点,使用getCheckedKeys方法获取选中节点时,需要等到所有节点都加载完毕才能正确获取选中节点的key值数组。
阅读全文