【ECharts】事件

窗口缩放自适应

// echarts 窗口缩放自适应
window.onresize = function() {
    myChart.resize();
}

图表的鼠标事件

option = {
    xAxis: {
        type: 'category',
        data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
    },
    yAxis: {
        type: 'value'
    },
    series: [
        {
        data: [150, 230, 224, 218, 135, 147, 260],
        type: 'line'
        }
    ]
};

option && myChart.setOption(option);

myChart.on('click', function (params) {
    console.log(params)
});

点击折线点后数据params

多次初始化同一个dom(报错:There is a chart instance already initialized on the dom。)

dom上已经初始化了一个实例,并且如果你图表中定义了点击方法,多次覆盖之后,点击方法会触发多次。更新页面重复加载这个图表实例时就会出现这类警告。

var mychart

if (mychart != null && myChart != "" && myChart != undefined) {
  myChart.dispose()
}

myChart = echarts.init(document.getElementById('container'));
let myChart = this.$echarts.getInstanceByDom(this.$refs[this.chart.type]);
if (myChart == null) {
    myChart = this.$echarts.init(this.$refs[this.chart.type]);
}
myChart.setOption(option);

多次触发点击事件

在点击之前先触发取消事件

var myChart = echarts.init(pieId)
myChart.setOption({
  // ....
});

myChart.off('click')
myChart.on('click', function (params) {
    console.log(params)
});

利用dom中ref属性调用

let myChart = this.$refs.pie ? this.$refs.pie.chart : null;
if (myChart) {
  myChart.off("click")
  myChart.on("click", (e) => {
    console.log(e.name)
  });
}

离开页面销毁

beforeDestroy() {
  if (!myChart) {
    return
  }
  myChart.dispose()
  myChart = null
},

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宾果的救星

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值