async showsetright (role) {
// 获取所有权限的数据
// console.log(role)
try {
const { data: res } = await this.$http.get('rights/tree')
if (res.meta.status !== 200) {
return this.$message.error('获取权限数据失败!')
}
this.rightlist = res.data
// 递归获取三级节点的id
this.getleafkeys(role, this.defkeys) 就是这句话
console.log(this)
this.setrightdialog = true
} catch (err) {
console.log(err)
}
},
// 通过递归的形式,获取角色下所有三级权限的ID 并保存到defkeys中
getleafkeys (node, arr) {
console.log(node.children)
// 如果当前node节点不包括children属性则是3级节点
if (!node.children) {
return arr.push(node.id)
}
node.children.forEach(item =>
this.getLeafkeys(item, arr))
}
}