当点击某一分类的时候,获取其ID和其父的所有id
效果:
<el-tree
:data="deptOptions"
:props="{ label: 'dictName', children: 'children' }"
@node-click="handleNodeClick"
@node-expand="handleNodeExpand"
>
** 节点单击事件 */
function handleNodeClick(nodeData) {
// 递归查找所有父节点
const parentNodes = findParentNodes(nodeData);
parentNodes.unshift(nodeData.id);
let ids = parentNodes.reverse();
console.log(ids);
}
function findParentNodes(nodeData) {
const parentNodes = [];
let treeref = proxy.$refs["deptTreeRef"];
// console.log(nodeData);
const findParent = (node) => {
let pid = treeref.getNode(node).parent.data.id || 0;
// console.log(pid);
// console.log(treeref.getNode(node).parent.data);
if (pid !== 0) {
parentNodes.push(pid);
findParent(treeref.getNode(node).parent.data);
}
};
findParent(nodeData);
return parentNodes;
}