el-tree选中数据 添加tag
时间: 2023-10-20 11:07:56 浏览: 176
要为el-tree中的数据添加tag,您可以使用以下步骤:
1. 为每个节点添加一个tag属性,该属性可以是一个数组,用于存储标签数据。
2. 在el-tree组件的节点模板中,将tag属性绑定到节点的自定义属性,例如:data-tag="node.tag"。
3. 在处理el-tree节点的选中状态时,将选中的节点的tag数据添加到一个数组中,以便稍后使用。
以下是一个示例代码,展示如何在el-tree中为数据添加tag:
```html
<template>
<el-tree :data="treeData" :props="treeProps" @check-change="handleCheckChange">
<span class="custom-node" slot-scope="{ node }" :data-tag="node.tag">{{ node.label }}</span>
</el-tree>
</template>
<script>
export default {
data() {
return {
treeData: [
{
label: 'Node 1',
tag: ['tag1']
children: [
{
label: 'Node 1-1',
tag: ['tag2']
children: []
}
]
},
{
label: 'Node 2',
tag: ['tag3']
children: []
}
],
checkedTags: []
}
},
computed: {
treeProps() {
return {
children: 'children',
label: 'label',
isLeaf: node => !node.children
}
}
},
methods: {
handleCheckChange(checkedNodes) {
this.checkedTags = checkedNodes.reduce((tags, node) => {
if (node.data.tag) {
tags.push(...node.data.tag)
}
return tags
}, [])
}
}
}
</script>
```
在上面的示例中,每个节点都有一个tag属性,该属性是一个数组,用于存储标签数据。在el-tree的节点模板中,使用:data-tag="node.tag"将tag属性绑定到节点的自定义属性。在处理节点的选中状态时,将选中的节点的tag数据添加到checkedTags数组中,以便稍后使用。
阅读全文