请问element-ui中的<el-tree>组件,default-checked-keys可通过setCheckedKeys来动态修改,但是属性defaultExpandedKeys 没有相应函数,请问如何动态修改?
请问element-ui中的<el-tree>组件,default-checked-keys可通过setCheckedKeys来动态修改,但是属性defaultExpandedKeys 没有相应函数,请问如何动态修改?
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答4.7k 阅读✓ 已解决
4 回答4.3k 阅读✓ 已解决
4 回答1.9k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
2 回答2.5k 阅读✓ 已解决
看源码,以
element-ui@1.4.10
为例。从这里可以看出,
default-expanded-keys
有监听,也就是说可以直接修改其值,如下:但这么做会有如下警告,意思是不应该这样做,应该采用双向绑定即
:
或v-bind
的方式(即为用data或computed绑定变量到属性,不赘述)如果使用函数的方式,则如下:
成功展开节点,但这里还有个问题,该方法没有处理需要收起的节点。
继续查看源码:
发现tree和tree-store都没有提供收起节点的方法,node的收起方法也就是修改了这个属性……
那么这就有点尴尬了,在调用
setDefaultExpandedKeys
方法之前,你可能需要自己去遍历子节点先收起所有的子节点……或者,你也可以fork一下然后完善了提个pr,为开源社区做贡献啊~
这里是我测试用的示例