在使用iview中使用tree组件的时候,遇到了个坑,以此来记录下:
给tree结构进行操作时,最后刷新树结构会不知道自己操作了哪个节点,所以需要在操作完后展开,
Vue.set(item, 'expand', true)
iview: 4.1.1
/*
* 展开选中的tree结构,增加expand属性
* @param tree 树结构
* @param pid 增加 和 编辑 是当前节点的 id ;
* 删除 是当前节点的pid
* */
unFold (tree, pid) {
var getUnFold
getUnFold = function (arr, id) {
for (var i = 0; i < arr.length; i++) {
var item = arr[i]
if (item.id === id) {
Vue.set(item, 'expand', true)
getUnFold(tree, item.pid)
break
} else {
if (item.children) {
getUnFold(item.children, id)
}
}
}
}
getUnFold(tree, pid)
return tree
}
网友评论