vue el-tree禁用父节点
时间: 2023-10-19 19:36:16 浏览: 161
可以通过给父节点添加一个属性来禁用它。在 el-tree 中,可以使用 node-key 属性指定节点的唯一标识符,然后通过遍历所有节点,将父节点的 disabled 属性设置为 true,从而禁用它。
下面是一个示例代码:
```vue
<template>
<el-tree
:data="treeData"
:node-key="nodeKey"
:props="defaultProps"
></el-tree>
</template>
<script>
export default {
data() {
return {
treeData: [
{
id: 1,
label: "Parent 1",
children: [
{
id: 2,
label: "Child 1-1",
},
{
id: 3,
label: "Child 1-2",
},
],
},
{
id: 4,
label: "Parent 2",
children: [
{
id: 5,
label: "Child 2-1",
},
{
id: 6,
label: "Child 2-2",
},
],
},
],
nodeKey: "id",
defaultProps: {
children: "children",
label: "label",
disabled: "disabled", // 禁用属性
},
};
},
mounted() {
this.disableParentNodes();
},
methods: {
disableParentNodes() {
this.treeData.forEach((node) => {
if (node.children && node.children.length > 0) {
node.children.forEach((child) => {
child.disabled = true;
});
}
});
},
},
};
</script>
```
在上面的代码中,我们通过遍历树的数据,将每个父节点的子节点的 disabled 属性设置为 true,这样就禁用了父节点。你可以根据自己的数据结构和需求来调整代码。希望能帮到你!
阅读全文