解决vue3线上环境组件重新渲染但是echarts图表无法正常显示问题
问题
线上环境vue组件第一次渲染时echarts图表可以正常渲染展示,但是第二次进入组件时(组件重新渲染)echarts无法正常渲染展示
排查
通过检查dom发现虽然组件第二次重新渲染时,第一次组件渲染生成的echarts实列依然存在(未销毁)导致第二次组件渲染但是echarts无法成功渲染展示
解决办法
在组件每次渲染时都执行一次echants实列销毁操作
代码
<div class="show-charts">
<div class="charts" id="profitCharts"></div>
</div>
const getProfit = async () => {
myChart.clear()
try {
...
myChart.setOption(profitOption(chartsSet), true)
} catch (error) {
console.log(error, 'notde:::::::::Error')
}
}
onMounted(() => {
echarts.init(document.getElementById("profitCharts")).dispose() // 17635解决线上环境tab切换不渲染echarts问题,销毁echarts实列解决组件重新渲染时echarts组件不重新渲染
myChart = echarts.init(document.getElementById("profitCharts"))
getProfit()
window.onresize = function () {
myChart.resize()
}
})
每一个人心中都有一团火,路过的人只看到烟!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律