update ZR.Vue/src/views/system/menu/index.vue.

新增/修改/删除子节点时,子节点未更新。增加了自动更新table里子节点的功能

Signed-off-by: xbzhu <5430389+xbzhu@user.noreply.gitee.com>
This commit is contained in:
xbzhu 2023-01-21 07:02:41 +00:00 committed by Gitee
parent 0bf43fe33a
commit 069420d557
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F

View File

@ -27,6 +27,7 @@
<el-table v-if="refreshTable" v-loading="loading" :data="menuList" :default-expand-all="isExpandAll"
row-key="menuId"
node-key="menuId"
border
lazy
:load="loadMenu"
@ -276,6 +277,8 @@ export default {
{ required: true, message: "路由地址不能为空", trigger: "blur" },
],
},
// table
tableTreeNodeMap: new Map(),
};
},
created() {
@ -397,13 +400,21 @@ export default {
updateMenu(this.form).then((response) => {
this.msgSuccess("修改成功");
this.open = false;
if (this.form.parentId === 0) {
this.getList();
} else {
this.refreshTableTree(this.form.parentId);
}
});
} else {
addMenu(this.form).then((response) => {
this.msgSuccess("新增成功");
this.open = false;
if (this.form.parentId === 0) {
this.getList();
} else {
this.refreshTableTree(this.form.parentId);
}
});
}
}
@ -424,7 +435,11 @@ export default {
return delMenu(row.menuId);
})
.then(() => {
if (row.parentId === 0) {
this.getList();
} else {
this.refreshTableTree(row.parentId);
}
this.msgSuccess("删除成功");
});
},
@ -462,10 +477,20 @@ export default {
});
},
loadMenu (row, treeNode, resolve) {
this.tableTreeNodeMap.set(row.menuId, { row, treeNode, resolve });
listMenuById(row.menuId).then((res) => {
resolve(res.data)
})
},
////
refreshTableTree(key) {
const node = this.tableTreeNodeMap.get(key);
if (!node) {
return;
}
const { row, treeNode, resolve } = node;
this.loadMenu(row, treeNode, resolve);
},
},
};
</script>