// * 解析出所有的太监节点id
// * @param json 待解析的json串
// * @param idArr 原始节点数组
// * @param temp 临时存放节点id的数组
// * @return 太监节点id数组
// */
resolveAllEunuchNodeId(json, idArr, temp) {
for (let i = 0; i < json.length; i++) {
const item = json[i]
// 存在子节点,递归遍历;不存在子节点,将json的id添加到临时数组中
if (item.children && item.children.length !== 0) {
this.resolveAllEunuchNodeId(item.children, idArr, temp)
} else {
temp.push(idArr.filter(id => id === item.permission_id))
}
}
return temp
},
使用
// 解析出所有的太监节点
this.checkedKeys = this.resolveAllEunuchNodeId(this.treeData, this.checkedKeys, [])