elementui 中el-tree ,数据回显问题

当后台返回的el-tree相关数组的时候,子菜单未全部选中,但是只要父级菜单的id在数组中,那么他的子菜单为全部选中状态

clipboard.png

clipboard.png

用的方法

this.$axios.get('menu/queryMenuIdList?roleId=' + row.roleId).then(res => {
                   this.defalutArr = res.data
                   this.$refs.tree.setCheckedKeys(this.defalutArr);
                   })

看了文档说setCheckedKey()方法返回的数组中只要是包含的id就会被置为选中状态,而不是半选中状态,求救啊

阅读 14.7k
4 个回答

不要使用 setCheckedKeys 来回显数据,从后端拿到 id 数组之后,使用 setChecked 来循环设置选中状态。
另外需要注意一点,如果使用 setChecked 发现没有效果,那就给它加个 setTimeout ,或者拿到数据后,再接个 then 去处理。

新手上路,请多包涵

把this.defalutArr中的父级id过滤掉呢

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题