Vue3使用Echarts导致tooltip失效问题及解决方法

 更新时间:2023年08月31日 11:14:00   作者:MichstaBe Stars  
Vue3 使用 proxy 对象代理,而 echarts 则使用了大量的全等(===), 对比失败从而导致了bug,这篇文章主要介绍了Vue3使用Echarts导致tooltip失效问题及解决方法,需要的朋友可以参考下

版本 vue3.2.47 echarts5.4.1

使用响应式对象存储 echarts 实例,导致 tooltip 功能失效;

原因:Vue3 使用 proxy 对象代理,而 echarts 则使用了大量的全等(===), 对比失败从而导致了bug。

解决方法:将ref或reactive对象换成普通变量来保存 echarts 实例。

初始化图表

// 初始化柱状图
function initBarChart(data) {
	const myChart = echarts.init(unref(barRef));
	const option: EChartsOption = {
	    color: ['#3398DB'],
	    tooltip: {
	        trigger: 'axis',
	        axisPointer: { type: 'shadow' }
	    },
	    grid: {
	        left: '3%',
	        right: '4%',
	        bottom: '3%',
	        containLabel: true
	    },
	    xAxis: [
	        {
	            type: 'category',
	            data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
	            axisTick: { alignWithLabel: true }
	        }
	    ],
	    yAxis: [{ type: 'value' }],
	    series: [
	        {
	            name: '直接访问',
	            type: 'bar',           
	            data: [10, 52, 200, 334, 390, 330, 220]
	        }
	    ]
	};	
	myChart.setOption(option);
}

更新图表数据

// 更新柱状图
function updateBarChart(data) {
	const getLineChartInstance = echarts.getInstanceByDom(unref(barRef)!);
	getLineChartInstance && getLineChartInstance.setOption({ series: [{ data }] });
}

到此这篇关于Vue3使用Echarts导致tooltip失效的文章就介绍到这了,更多相关Vue3使用Echarts tooltip失效内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Vue中map()的用法案例

    Vue中map()的用法案例

    map()函数定义在JS的array中,它返回一个新的数组,下面这篇文章主要给大家介绍了关于Vue中map()的用法案例,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • vue中get方法\post方法如何传递数组参数详解

    vue中get方法\post方法如何传递数组参数详解

    在前后端交互的时候,有时候需要通过get或者delete传递一个数组给后台,下面下面这篇文章主要给大家介绍了关于vue中get方法\post方法如何传递数组参数,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-03-03
  • 详解为什么Vue中的v-if和v-for不建议一起用

    详解为什么Vue中的v-if和v-for不建议一起用

    这篇文章主要介绍了面试官:为什么Vue中的v-if和v-for不建议一起用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • vue-cli 引入jQuery,Bootstrap,popper的方法

    vue-cli 引入jQuery,Bootstrap,popper的方法

    这篇文章主要介绍了vue-cli 引入jQuery,Bootstrap,popper的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • vue3.0父子传参,子修改父数据的实现

    vue3.0父子传参,子修改父数据的实现

    这篇文章主要介绍了vue3.0父子传参,子修改父数据的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • Vue 项目性能优化方案分享

    Vue 项目性能优化方案分享

    本文是作者通过实际项目的优化实践进行总结而来,希望读者读完本文,有一定的启发思考,从而对自己的项目进行优化起到帮助
    2022-08-08
  • 手拉手教你如何处理vue项目中的错误

    手拉手教你如何处理vue项目中的错误

    在项目开发中经常遇到各种报错,每次总是通过这样或那样的办法解决掉,这篇文章主要给大家介绍了关于如何处理vue项目中错误的相关资料,需要的朋友可以参考下
    2022-06-06
  • vue项目中axios请求网络接口封装的示例代码

    vue项目中axios请求网络接口封装的示例代码

    这篇文章主要介绍了vue项目中axios请求网络接口封装的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • vue实现点击当前标签高亮效果【推荐】

    vue实现点击当前标签高亮效果【推荐】

    这篇文章主要介绍了vue实现点击当前标签高亮效果的思路详解,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友参考下吧
    2018-06-06
  • Vue3中注册全局的组件,并在TS中添加全局组件提示方式

    Vue3中注册全局的组件,并在TS中添加全局组件提示方式

    这篇文章主要介绍了Vue3中注册全局的组件,并在TS中添加全局组件提示方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07

最新评论