PHP前端开发

小程序中使用ECharts 异步加载数据

百变鹏仔 3周前 (11-27) #echarts
文章标签 加载

这篇文章主要介绍了关于小程序中使用echarts 异步加载数据 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

官网例子都是同步的,怎么引入及同步demo请移步官网

import * as echarts from '../../ec-canvas/echarts';Page({  data: {    ecBar: {      lazyLoad: true // 延迟加载    },    ecScatter: {      lazyLoad: true     }  },  onLoad(){    this.barComponent = this.selectComponent('#mychart-dom-multi-bar');    this.scaComponnet = this.selectComponent('#mychart-dom-multi-scatter');    this.init_bar();    this.init_sca();  },  init_bar: function (){    this.barComponent.init((canvas, width, height) =&gt; {      // 初始化图表      const barChart = echarts.init(canvas, null, {        width: width,        height: height      });      barChart.setOption(this.getBarOption());      // 注意这里一定要返回 chart 实例,否则会影响事件处理等      return barChart;    });  },  init_sca: function () {    this.scaComponnet.init((canvas, width, height) =&gt; {      // 初始化图表      const scaChart = echarts.init(canvas, null, {        width: width,        height: height      });      scaChart.setOption(this.getScaOption());      // 注意这里一定要返回 chart 实例,否则会影响事件处理等      return scaChart;    });  },  getBarOption:function(){    //return 请求数据    return {      color: ['#37a2da', '#32c5e9', '#67e0e3'],      tooltip: {        trigger: 'axis',        axisPointer: {            // 坐标轴指示器,坐标轴触发有效          type: 'shadow'        // 默认为直线,可选为:'line' | 'shadow'        }      },      legend: {        data: ['热度', '正面', '负面']      },      grid: {        left: 20,        right: 20,        bottom: 15,        top: 40,        containLabel: true      },      xAxis: [        {          type: 'value',          axisLine: {            lineStyle: {              color: '#999'            }          },          axisLabel: {            color: '#666'          }        }      ],      yAxis: [        {          type: 'category',          axisTick: { show: false },          data: ['汽车之家', '今日头条', '百度贴吧', '一点资讯', '微信', '微博', '知乎'],          axisLine: {            lineStyle: {              color: '#999'            }          },          axisLabel: {            color: '#666'          }        }      ],      series: [        {          name: '热度',          type: 'bar',          label: {            normal: {              show: true,              position: 'inside'            }          },          data: [300, 270, 340, 344, 300, 320, 310]        },        {          name: '正面',          type: 'bar',          stack: '总量',          label: {            normal: {              show: true            }          },          data: [120, 102, 141, 174, 190, 250, 220]        },        {          name: '负面',          type: 'bar',          stack: '总量',          label: {            normal: {              show: true,              position: 'left'            }          },          data: [-20, -32, -21, -34, -90, -130, -110]        }      ]    };  },  getScaOption:function(){    //请求数据     var data = [];    var data2 = [];    for (var i = 0; i <p></p><p>注意:异步加载时,ec-canvas标签加载显示要先于this.scaComponnet.init,否则会报错。</p><p>以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!</p><p>