要给tree的data递归赋值disabled,发现无法生效
<el-tree
:data="data3"
show-checkbox
node-key="id"
:default-expanded-keys="[2, 3]"
:default-checked-keys="[5]">
</el-tree>
<script>
export default {
data() {
return {
data3: [{
id: 1,
label: '一级 2',
children: [{
id: 3,
label: '二级 2-1',
children: [{
id: 4,
label: '三级 3-1-1'
}, {
id: 5,
label: '三级 3-1-2',
disabled: true
}]
}, {
id: 2,
label: '二级 2-2',
disabled: true,
children: [{
id: 6,
label: '三级 3-2-1'
}, {
id: 7,
label: '三级 3-2-2',
disabled: true
}]
}]
}],
defaultProps: {
children: 'children',
label: 'label'
}
};
}
mounted(){
this.setDisabled(data3);//递归给数组禁止选中
},
methods:{
setDisabled(obj){
obj.forEach(item=>{
item.disabled = true;
this.setDisabled(item.children)
})
}
}
};
</script>
解决:通过this.$set(item,'disabled',true);