本文介绍: 来获取而并不能通过document.getElementById获取,这样,在组件渲染多个charts时候,就可以通过获取当前实例精准渲染出来。但如果将其封装组件,并在一个页面当中引用多次生成多个charts图标,那么这个时候就会出现上下之间charts错乱问题。经过分析和反复测验发现需要在这两个钩子当中重新。,并且init需要通过。

首先,uniapp当中使用echarts是在通过使用renderjsscript模板的前提下实现的,在官方提供的案例当中核心代码是这一部分
在这里插入图片描述
但如果将其封装组件,并在一个页面当中引用多次生成多个charts图标,那么这个时候就会出现上下之间charts错乱问题
问题解决

initEcharts() {
	myChart = echarts.init(this.$el)
	myChart.setOption(this.option)
},
updateEcharts(newValue, oldValue, ownerInstance, instance) {
	myChart = echarts.init(ownerInstance.$el)
	myChart.setOption(newValue)
}

经过分析和反复测验发现需要在这两个钩子当中重新init charts,并且init需要通过this.$el获取而并不能通过document.getElementById获取,这样,在组件渲染多个charts的时候,就可以通过获取当前实例精准渲染出来

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注