diff --git a/src/views/sponeScreen/HaiMianScreen/index.vue b/src/views/sponeScreen/HaiMianScreen/index.vue index 9843ebf..b9b9f00 100644 --- a/src/views/sponeScreen/HaiMianScreen/index.vue +++ b/src/views/sponeScreen/HaiMianScreen/index.vue @@ -161,7 +161,11 @@ }); onBeforeUnmount(() => { if (newfiberMap) { + console.log('newfiberMap.getMap().destroy()'); let _originalGLContext = newfiberMap.getMap().scene?.context._originalGLContext; + newfiberMap.getMap().imageryLayers.removeAll(); + newfiberMap.getMap().entities.removeAll(); + newfiberMap.getMap().scene.primitives.removeAll(); newfiberMap.getMap().destroy(); if (_originalGLContext) { _originalGLContext.getExtension('WEBGL_lose_context').loseContext(); diff --git a/src/views/sponeScreen/HaiMianScreen/index.vue b/src/views/sponeScreen/HaiMianScreen/index.vue index 9843ebf..b9b9f00 100644 --- a/src/views/sponeScreen/HaiMianScreen/index.vue +++ b/src/views/sponeScreen/HaiMianScreen/index.vue @@ -161,7 +161,11 @@ }); onBeforeUnmount(() => { if (newfiberMap) { + console.log('newfiberMap.getMap().destroy()'); let _originalGLContext = newfiberMap.getMap().scene?.context._originalGLContext; + newfiberMap.getMap().imageryLayers.removeAll(); + newfiberMap.getMap().entities.removeAll(); + newfiberMap.getMap().scene.primitives.removeAll(); newfiberMap.getMap().destroy(); if (_originalGLContext) { _originalGLContext.getExtension('WEBGL_lose_context').loseContext(); diff --git a/src/views/sponeScreen/cityGK/rainfall.vue b/src/views/sponeScreen/cityGK/rainfall.vue index 74cedfa..86baa6d 100644 --- a/src/views/sponeScreen/cityGK/rainfall.vue +++ b/src/views/sponeScreen/cityGK/rainfall.vue @@ -130,6 +130,7 @@ onBeforeUnmount(() => { clearInterval(weatherTimer.value); weatherTimer.value = null; + if (!newfiberMap) return; newfiberMap.weatherRemove(); }); diff --git a/src/views/sponeScreen/HaiMianScreen/index.vue b/src/views/sponeScreen/HaiMianScreen/index.vue index 9843ebf..b9b9f00 100644 --- a/src/views/sponeScreen/HaiMianScreen/index.vue +++ b/src/views/sponeScreen/HaiMianScreen/index.vue @@ -161,7 +161,11 @@ }); onBeforeUnmount(() => { if (newfiberMap) { + console.log('newfiberMap.getMap().destroy()'); let _originalGLContext = newfiberMap.getMap().scene?.context._originalGLContext; + newfiberMap.getMap().imageryLayers.removeAll(); + newfiberMap.getMap().entities.removeAll(); + newfiberMap.getMap().scene.primitives.removeAll(); newfiberMap.getMap().destroy(); if (_originalGLContext) { _originalGLContext.getExtension('WEBGL_lose_context').loseContext(); diff --git a/src/views/sponeScreen/cityGK/rainfall.vue b/src/views/sponeScreen/cityGK/rainfall.vue index 74cedfa..86baa6d 100644 --- a/src/views/sponeScreen/cityGK/rainfall.vue +++ b/src/views/sponeScreen/cityGK/rainfall.vue @@ -130,6 +130,7 @@ onBeforeUnmount(() => { clearInterval(weatherTimer.value); weatherTimer.value = null; + if (!newfiberMap) return; newfiberMap.weatherRemove(); }); diff --git a/src/views/sponeScreen/projectHM/ProjectDisplay.vue b/src/views/sponeScreen/projectHM/ProjectDisplay.vue index 297869c..efde78f 100644 --- a/src/views/sponeScreen/projectHM/ProjectDisplay.vue +++ b/src/views/sponeScreen/projectHM/ProjectDisplay.vue @@ -269,6 +269,7 @@ }); }); onBeforeUnmount(() => { + if (!newfiberMap) return; newfiberMap.removeByIds([ 'projectBoundaryLayers', 'HMJZYSQ',