echartscleardisposeloseContextechartsrouterjsrouterbeforeEachAPPvue_0">如果使用echarts自带的clear()和dispose()方法没有明显效果的话,可以使用页面的loseContext()对echarts进行手动清除,最好放到router.js里的路由守卫(router.beforeEach)里执行,也可以在APP.vue下监听路由的变化进行清除,自行决定即可,具体代码如下 const canvasArr = document.getElementsByTagName("canvas");console.log(canvasArr);for (let i = 0; i < canvasArr.length; i++) {if (canvasArr[i].id == "myCanvas") {//这里给不想进行清空的canvas进行匹配跳过清除,前提是给它加上对应的id} else {canvasArr[i].getContext("webgl")?.getExtension("WEBGL_lose_context").loseContext();}}