vue-tree
                                
                                 vue-tree copied to clipboard
                                
                                    vue-tree copied to clipboard
                            
                            
                            
                        怎么只更新某一个节点的样式?
使用 setData() 的方式设置树的数据 (使用非响应式):
- 节点 node 当前是非叶子节点,其 node.isLeaf为 false,有小三角形箭头。
- 手动修改 node.isLeaf = true把节点修改为叶子节点,节点的样式没有变,即小三角形箭头还在。
- 调用树的方法 tree.value.clearChecked()强制更新整棵树,这时 node 的小三角形箭头消失。
有没有更好的方法,只更新某个节点的样式?
如果你要把非叶子节点变成叶子节点,把它底下的所有子节点都删除可以吗,调用 remove 方法
或者在数据中把子节点都去掉,重新 setData 试试
如果你要把非叶子节点变成叶子节点,把它底下的所有子节点都删除可以吗,调用
remove方法 或者在数据中把子节点都去掉,重新setData试试
谢谢回复,其实这只是一个例子,因为还有不少情况需要更新某个指定节点的样式,例如修改某个属性值,节点的样式要更新。
节点数据变化了,调用 tree.value.clearChecked() 强制更新节点样式。
^3.1.0 的时候 tree.value.clearChecked() 这个方法还能勉强实现这个功能,但是 ^3.2.0 后这个功能失效了。
问题: 有没有办法在修改节点的数据 node.title = 'foo' 后,更新这个节点呢?
https://wsfe.github.io/vue-tree/examples/node-manipulation.html#update-node-title