vue echarts实现绑定事件和解绑事件

 更新时间:2024年06月12日 10:52:46   作者:weixin_46412709  
这篇文章主要介绍了vue echarts实现绑定事件和解绑事件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

vue echarts绑定事件和解绑事件

// echarts 官网里面 action 和 events 都是触发事件的一些行为,默认事件和自定义事件

var mYcharts = echarts.init(dom)
// 绑定事件
mYcharts.on('click', function (arg) {
	// 里面会有默认形参
	console.log(arg)
})

mYcharts.off('click') // 解绑 click 事件

vue使用echarts中遇到的问题及解决

最近在做demo的过程中用到了echarts,在过程中也踩了好多坑,所以专门记录一下遇到的问题及解决方案。

遇到的问题

  • 安装完echarts依赖后表格示例无法显示
  • 示例图标显示后格式异常
  • 再次进入业务事件后提示dom已加载并展示异常

解决方案

安装完echarts依赖后表格示例无法显示

解决方案:这种问题一般会是两种情况:

  • 一是版本不对应的问题,npm install echarts --save默认的是最新的版本(5.1x),直接安装最新版本的echarts可能会出现上述问题,所以需要降低版本安装echarts。
  • 二是安装echarts后未成功挂载到vue上。

我是第二种情况,解决代码如下

// 安装echarts依赖
npm install echarts --save

// 在main.js文件中添加
import * as echarts from 'echarts'
Vue.prototype.$echarts = echarts 

// 实际业务处理文件中使用echarts
<div ref="xxxx" />

this.$echarts.init(this.$refs.xxxx).setOption({
 ...
})

示例图标显示后格式异常

解决方案: 我当时出现的情况是示例只在很窄的区域展示,所以要给对应的dom-div设置宽高,解决如下

<div ref="xxxx" style="width: 45vh; height: 300px" />

再次进入业务事件后提示dom已加载并展示异常

解决方案: 这个问题确实有点恶心,当我再次调用对应的echarts时,控制台会报dom已加载的警告,并且页面的示例图表会展示异常,解决方法是每次重新调用echarts时都需要先判断是否dom上已经存在,若存在则需要销毁对应的dom结构,这样处理过后就不会再有上述提示警告并且echarts图表能够正常展示,解决代码如下:

// 关键代码
	let myChart = this.$echarts.getInstanceByDom(
      this.$refs.xxxx
    )
    if (myChart == null) {
	  myChart = this.$echarts.init(this.$refs.xxxx).setOption({
        ...
      })
    }

// 举例
    // 账单类型
    noteTypeBarEcharts() {
      const finalArr = this.sortArr(this.tableInfo)
      console.log('分类后的数组', finalArr)
      // 检测是否已经存在echarts实例,如果不存在,则不再去初始化
      let myChart = this.$echarts.getInstanceByDom(
        this.$refs.barSecond
      )
      if (myChart == null) {
        myChart = this.$echarts.init(this.$refs.barSecond).setOption({
          title: {
            text: '账单类型',
            subtext: '(单位/元)',
            left: 'center'
          },
          tooltip: {
            trigger: 'item',
            formatter: '{b}:{c} ({d}%)'
          },
          toolbox: {
            feature: {
              saveAsImage: {}
            }
          },
          legend: {
            orient: 'vertical',
            left: 'left'
          },
          series: [
            {
              type: 'pie',
              radius: '50%',
              data: finalArr
            }
          ]
        })
      }
    }

至此,我们就可以在vue项目中随意使用echarts啦

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue移动端UI框架实现QQ侧边菜单组件

    vue移动端UI框架实现QQ侧边菜单组件

    这篇文章主要介绍了vue移动端UI框架实现仿qq侧边菜单组件,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2018-03-03
  • Vue 内置指令梳理总结

    Vue 内置指令梳理总结

    这篇文章主要介绍了Vue 内置指令梳理总结,文章首先从v-text指令展开内容介绍,具有一定的知识性参考价值,需要的小伙伴可以参考一下
    2022-05-05
  • vue动态绑定class的几种常用方式小结

    vue动态绑定class的几种常用方式小结

    这篇文章主要介绍了vue动态绑定class的几种常用方式,结合实例形式总结分析了vue.js常见的对象方法、数组方法进行class动态绑定相关操作技巧,需要的朋友可以参考下
    2019-05-05
  • Vue3中的unref详解与常见使用方法

    Vue3中的unref详解与常见使用方法

    这篇文章主要给大家介绍了关于Vue3中unref详解与常见使用的相关资料,Vue3中的unref是一个实用工具,用于简化访问响应式引用和普通值的过程,通过自动判断类型,unref可以处理任何类型的值,从而使代码更加简洁和易读,需要的朋友可以参考下
    2024-11-11
  • vue 如何添加全局函数或全局变量以及单页面的title设置总结

    vue 如何添加全局函数或全局变量以及单页面的title设置总结

    本篇文章主要介绍了vue 如何添加全局函数或全局变量以及单页面的title设置总结,非常具有实用价值,需要的朋友可以参考下
    2017-06-06
  • vue element el-form 多级嵌套验证的实现示例

    vue element el-form 多级嵌套验证的实现示例

    本文主要介绍了vue element el-form 多级嵌套验证的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • vue中使用file-saver导出文件的全过程记录

    vue中使用file-saver导出文件的全过程记录

    这篇文章主要给大家介绍了关于vue中使用file-saver导出文件的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2022-02-02
  • 手把手搭建安装基于windows的Vue.js运行环境

    手把手搭建安装基于windows的Vue.js运行环境

    手把手教大家搭建安装基于windows的Vue.js的运行环境,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • 详解vue2 $watch要注意的问题

    详解vue2 $watch要注意的问题

    本篇文章主要介绍了详解vue2 $watch要注意的问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • Vue开发中整合axios的文件整理

    Vue开发中整合axios的文件整理

    这篇文章主要给大家整理了在Vue开发中整合axios要用到的文件,在vue开发中,不可避免要整合axios,文中通过示例代码介绍的非常详细,需要的朋友们下面来一起看看吧。
    2017-04-04

最新评论