vue中引入Echarts异步加载数据更新图表

对于这个问题,刚开始觉得比较简单,但是无法渲染图表
后来才发现,我用ajax异步加载数据,当图表渲染的时候,数据还没有拿到,这样没有数据,自然不能渲染图表。
找到了一个很笨的方法,欢迎大家赐教!
先给出图表例图
这里写图片描述

其中的数据就是通过ajax异步从后台获取

贴出代码,这个函数写在methods中,获取到数据后再进行渲染

drawlineOne(){
      var vm = this;
      var url = 'http://localhost:3000/student/findByGender';
      $.getJSON(url,{gender:'男'},function(data){
        vm.studentMale = {value:data.length,name:'男'};
        $.getJSON(url,{gender:'女'},function(data){
          vm.studentFemale = {value:data.length,name:'女'};
          var myChartOne = vm.$echarts.init(document.getElementById('studentByGender'));
          vm.optionOne.series[0].data.push(vm.studentMale);
          vm.optionOne.series[0].data.push(vm.studentFemale);
          myChartOne.setOption(vm.optionOne);
        })
      });
    }

然后再mounted中进行调用

mounted () {
    this.drawlineOne();
 }

就解决了这个问题

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值