Element UI tree 组件 获取所选最高一级的节点

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Element UI tree 组件 获取所选最高一级的节点相关的知识,希望对你有一定的参考价值。

参考技术A 最近有了新的需求,要求可以展示一棵机构树,然后可以选择某些节点。所选节点如果它和它的兄弟节点都被选中,那么所选结果就是它们的父节点。

如下例子:

选择三级1-1-1、三级1-1-2(或二级1-1),所得结果为一级1;选择二级2-1、二级2-2,所得结果一级2

项目使用Element UI框架,查找了tree组件对外接口,没有提供,然后自己结合tree组件的方法实现一下

在点击某个节点,选择状态完成更新后的回调函数中,判断当前点击节点的父节点是否选中,若选中,就把该父节点下的所有子节点从结果数组中移除,把当前节点加入结果数组,然后判断该父节点的父节点是否选中,循环上述步骤直到它们的根节点或状态为未选中;若该父节点未选中,检查当前节点状态是否为选中,选中,则加入结果数组,否则就认为是当前点击操作取消了之前的选中状态,那么就需要在结果数组中删除当前点击项,考虑到之前可能是点击节点的父节点被选中状态,所以需要针对这个情况,需要在结果数组中删除父节点项,加入除当前点击项外的兄弟节点项(因为结果数组中存储的是最高一层的所选节点,所以不需要处理点击项的子节点)

tree组件中

使用方法

展示时删除某一选中项

以上是关于Element UI tree 组件 获取所选最高一级的节点的主要内容,如果未能解决你的问题,请参考以下文章

element-ui 树(tree)组件只能单选实现

关于element-ui的tree树形组件的bug

使用 element-ui 组件测试 Vue 组件

Element-ui tree组件自定义节点使用方法

关于Element UI tree组件 懒加载的更新操作

修改Element-ui中tree组件最底层节点的样式