树型结构关键字筛选-vue

树形结构关键字筛选-vue

在做权限管理的时候,权限是树型结构的数据,如果要做关键字筛选,就需要写递归去遍历所有元素并重新组合成新的树型结构的数据。

先看效果:

未筛选前:

sinye_未筛选前

筛选后:
sinye_筛选后

关键代码

// 角色关键字筛选 1
// 第一个参数是需要筛选的树型结构,第二个参数是需要筛选的关键字
findNode(treeData,key){
    return treeData.filter((item)=>{
        return this.filterItem(item,key);
    });
},
// 角色关键字筛选 2
filterItem(item,key){
    // 注意!!!:item.key的key是需要筛选的字段
    if(item.key.indexOf(key) !== -1) return true
    if(item.children){
        item.children = item.children.filter((sonEle)=>{
            return this.filterItem(sonEle,key);
        })
        if(item.children.length > 0){
            return true;
        }
    }
    return false;
},
暂无评论

发送评论 编辑评论


				
上一篇
下一篇