echarts 解决图表不更新渲染问题

在做关于echarts项目时常常会遇到,套用组件时,明明拿到了数据,图表数据效果却渲染不出来的情况。

在检查有关数据设置没问题之后,我们可以用watch监听对应的获取数据,开启deep和immediate后,将原option中的相关设置复制过来再次赋值,给与到对应的option中的data,lable或其他设置项中,以保证图表能重新渲染

watch: {
  'sumPlanAmount':{
        handler(newvalue,oldvalue){
        this.$nextTick(() => {
        const   label={
        color:'#BD3B04',
        insideColor:'#fff',
          formatter: '{a|滞后率}'+'\n\r' + '{b|'+this.lagRate +' }' +'{x|%}',
          rich: {
            a: {
              fontFamily: 'PingFang SC',
              fontSize: 16,
              fontWeight: 400,
              lineHeight: 13,
              textAlign: 'center',
            },
            b: {
              fontFamily: 'Helvetica Neue',
              letterSpacing:0,
              fontSize:19.52, 
              fontWeight: 500,
              textAlign:'center',
              lineHeight: 24.4
            },
            x: {
              fontFamily: 'Helvetica Neue',
              fontWeight: 400,
              lineHeight:17.08,
              letterSpacing:0,
              textAlign:'center',
              fontSize:10,
            },
          }
        }
          const data=  [this.lagRate/100,this.lagRate/100]
          this.$set(this.option100.series[0],'label',label)
          this.$set(this.option100.series[0],'data',data)
          var myChart10 = echarts.init(this.$refs.myChart10);
          this.option100 && myChart10.setOption(this.option100,true);
        })
        },
        immediate: true,
        deep: true,
    },
  },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值