最近遇到了一个需求:
编辑一条流程类型,修改其上级类型的时候不能选择自身节点,所以要删除掉, js 代码:
data() {
return {
procdefCatgTree: [] // 流程类型树
}
},
methods: {
// 显示编辑界面
handleEdit: function(row) {
proccatgTree().then((res) => {
// 过滤掉该节点及该节点下的所有子节点
this.deleteNode(res.data.data, row)
this.procdefCatgTree = res.data.data
})
},
// 过滤节点
deleteNode(treeData, data) {
for (var i = 0; i < treeData.length; i++) {
var td = treeData[i]
if (td.id === data.id) {
treeData.splice(i, 1)
continue
} else {
this.deleteNode(td.children, data)
}
}
}
}
有什么疑问的话欢迎私信交流
该方法的原文地址:https://blog.csdn.net/u012702547/article/details/79242899