angular-tree-component | 点击节点时如何获取完整路径及使用API的path选项
获取树形节点完整路径的实现方法
嘿,我来帮你搞定这个问题!其实要在点击节点时拿到完整路径非常简单,你注意到的path属性就是关键,直接在点击回调里用就行啦~
你只需要修改现有的dblClick事件处理逻辑,利用node对象自带的path属性就能获取从根节点到当前节点的完整路径节点数组。具体代码修改如下:
options: ITreeOptions = { actionMapping: { mouse: { dblClick: (tree, node, $event) => { // 获取包含所有路径节点的数组(从根到当前节点) const fullPathNodes = node.path; // 如果你需要提取路径的文本(比如节点名称),可以这样处理 // 假设你的节点数据里存储名称的字段是label,根据实际情况替换 const fullPathText = fullPathNodes.map(nodeItem => nodeItem.data.label).join(' / '); console.log('完整路径节点集合:', fullPathNodes); console.log('格式化后的路径文本:', fullPathText); } } } };
补充说明:
node.path返回的是一个节点实例数组,每一项都是树中的节点对象,包含该节点的所有数据和属性。- 你可以根据自己的业务需求,调整路径的格式化方式(比如用
>、/或者其他分隔符拼接),也可以提取节点的ID等其他字段来生成路径。 - 如果你的树开启了延迟加载,只要当前节点的路径已经被加载完成,
path属性就能正常返回完整路径,不需要额外配置。
内容的提问来源于stack exchange,提问作者heyhoo
相关产品推荐
相关产品推荐

