iview tree组件的checked属性值的更改不渲染问题

树形结构的数据是从后端返回的,所以开始的时候是没有设置checked属性的。而是在获得tree型数据时再将其赋值进去为每项都为false。

 因为选中是手动操作的,但是需要用代码使其控制选中后取消选中的操作,如下图:

虽然这样让数据的checked值变了,但是并没有渲染到页面上,所以页面上还是选中的样子,但是如果再点击一下父级的expand,关了再开就可以渲染成功

导致这样的原因就是我们是在获取数据后才赋值的checked,所以我们需要在最开始绘制tree时就给其添加checked等属性。

还有一个问题就是tree组件是父子联动的,如果需要把子级的checked的值改为false,则需要将父级的checked也改为false。

这时候我们可以使用一个组件的属性:check-strictly。使其不相互关联
 
完成!

posted @ 2021-12-21 10:41  相戀  阅读(703)  评论(0)    收藏  举报