From ae555904891550d551c517afb1f8f40d22d41dcc Mon Sep 17 00:00:00 2001 From: "hong.yang" Date: Mon, 9 Oct 2023 15:28:51 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=E5=9C=B0=E5=9B=BE?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E7=AE=A1=E7=90=86=E6=9F=A5=E8=AF=A2=E6=97=B6?= =?UTF-8?q?=EF=BC=8C=E6=9F=A5=E8=AF=A2=E7=BB=93=E6=9E=9C=E5=92=8C=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E5=B1=95=E5=BC=80=E5=AD=98=E5=9C=A8=E5=90=8C=E4=B8=80?= =?UTF-8?q?=E6=9D=A1=E6=95=B0=E6=8D=AE=E7=9A=84=E9=97=AE=E9=A2=98=EF=BC=8C?= =?UTF-8?q?=E5=BD=93=E5=87=BA=E7=8E=B0=E5=90=8C=E4=B8=80=E6=9D=A1=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=97=B6=EF=BC=8C=E5=B0=86=E5=A4=96=E9=83=A8=E7=9A=84?= =?UTF-8?q?=E6=8A=98=E5=8F=A0=E5=88=B0=E5=AD=90=E7=BA=A7=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../packages/MapDataManagement/src/index.vue | 46 +++++++++++++------ 1 file changed, 31 insertions(+), 15 deletions(-) diff --git a/data-room-ui/packages/MapDataManagement/src/index.vue b/data-room-ui/packages/MapDataManagement/src/index.vue index d7e4a567..aa434332 100644 --- a/data-room-ui/packages/MapDataManagement/src/index.vue +++ b/data-room-ui/packages/MapDataManagement/src/index.vue @@ -272,19 +272,24 @@ export default { }, getDataList() { this.lazyResolveMap.clear() - this.searchLoading = true - this.loadingText = '正在加载地图数据...' - mapList(this.searchForm).then(res => { - this.mapList = res - this.searchLoading = false - }).catch(err => { - this.searchLoading = false + this.$nextTick(() => { + this.mapList = [] + }) + this.$nextTick(() => { + this.searchLoading = true + this.loadingText = '正在加载地图数据...' + mapList(this.searchForm).then(res => { + this.mapList = res + this.searchLoading = false + }).catch(err => { + this.searchLoading = false + }) + // 清除展开状态 + for (let i = 0; i < this.lazyResolveIds.length; i++) { + this.$refs.table.store.states.treeData[this.lazyResolveIds[i]].loaded = false; + this.$refs.table.store.states.treeData[this.lazyResolveIds[i]].expanded = false + } }) - // 清除展开状态 - for (let i = 0; i < this.lazyResolveIds.length; i++) { - this.$refs.table.store.states.treeData[this.lazyResolveIds[i]].loaded = false; - this.$refs.table.store.states.treeData[this.lazyResolveIds[i]].expanded = false - } }, /** * 新增、删除、修改等操作成功后刷新数据,不改变展开状态 @@ -295,7 +300,6 @@ export default { if (this.lazyResolveMap.get(parentId)) { // 刷新父节点 const { data, treeNode, resolve } = this.lazyResolveMap.get(parentId) - // debugger this.$set(this.$refs.table.store.states.lazyTreeNodeMap, parentId, []) this.load(data, treeNode, resolve) return @@ -330,8 +334,20 @@ export default { this.lazyResolveIds.push(data.id) mapList({ parentId: data.id - }).then(res => { - resolve(res) + }).then(childList => { + // 解决同一页中同一条数据同时出现,如果懒加载中存在,那么将之前查询出来的数据删除 + let deleteIdList = [] + childList.forEach((child) => { + this.mapList.forEach((mapInfo) => { + if (mapInfo.id === child.id) { + deleteIdList.push(mapInfo.id) + } + }) + }) + this.mapList = this.mapList.filter((map) => { + return deleteIdList.indexOf(map.id) === -1 + }) + resolve(childList) }).catch(err => { resolve([]) })