1.使用el-tree 组件的 lazy和 load属性;
2.
<el-tree
class="filter-tree"
:load="loadNode"
lazy
:props="defaultProps"
:filter-node-method="filterNode"
:render-content="renderContent"
ref="treeRef"
:expand-on-click-node="false"
@node-contextmenu="rightClick"
@node-click="leftClick"
node-key="id"
></el-tree>
2.
/**
* 单独刷新节点
* id: 当前节点的父级唯一标识节点(指的是:el-tree组件上绑定的node-key="id")
* 需要提前保存,
* 注意调用时的ref的命名:treeRef
*/
refreshTreeNode(id) {
let node = this.$refs.treeRef.getNode(id)
if (node) {
node.loaded = false
node.expand() // 主动调用展开节点方法,重新查询该节点下的所有子节点
}
},
3. 该方法在添加、修改、删除时进行调用
add() {
// 发送请求
getData().then(res => {
// 成功之后
this.refreshTreeNode(id)
})
}
版权声明:本文为qq_57260058原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。