- 项目中,tree一共有三级,项目要求(点击收起按钮,只将所有的二级菜单收起,一级菜单不收起)
数据结构展示出来如下图:
点击收起按钮所有二级菜单收起,实现结果如下:
- 具体实现如下:(参考:https://blog.csdn.net/qq_36120342/article/details/102455591)
- 因为我的数据结构返回没有id,只有label,按照参考中给出的方法,一部分二级菜单不收起,(原因是:二级菜单的名称和三级菜单名称相同,这样就有冲突),最后修改实现如下:
for (let i = 0; i < treeList.length; i++) {
//原来的
// this.$refs.dbTreesNodes.store.nodesMap[treeList[i].label].expanded = false
//因为我的一级菜单是确定的,可以根据一级菜单拿二级菜单
//调整后的
this.$refs.dbTreesNodes.store.nodesMap['数据库']['childNodes'][i].expanded =false
}