收藏
回答

小程序使用echarts刚启动项目时显示 ,刷新显示页面不显示了,为什么 ?

代码如下:

在 onLoad 中调用 getData 函数 (请后台请求数据 获取 thisYear 和lastYear 的值 ) 【thisYear 和lastYear 是图表Y轴的数据值

在开发工具中,刚打开这个项目时, 图表能正常加载出来; 可是 一点了刷新后,或从其他页面切换回来后,就不会显示了。

这是为什么。。。

前端不熟悉,望高手们 指教下。。。

// pages/index/index.js
import * as echarts from '../../ec-canvas/echarts';
let chart=nulllet thisYear = null;
let lastYear = null;

// 图表数据 
function getData(){
  wx.request({
    url: 'http://127.0.0.1:5000/index',
    method:"GET",
    success:function(res){
      console.log(res.data)
      thisYear = res.data.thisYearData
      lastYear = res.data.lastYearData 
    }
  })
}
// 图表配置参数 函数
function getOption(){
   return {
    title: {
      text: '年度销售',
      textStyle:{
        color:'#987436',
        fontStyle:'italic',
        fontSize: 15
      }
    },
    tooltip: {
      trigger: 'axis'
    },
    legend: {
      data: ['LastYear''ThisYear']
    },
    xAxis: [
      {
        type'category',
        axisLabel: {
            interval:0,
            rotate:40,
        },
        axisTick: {
            alignWithLabel: true
        },
        data: ['Jan''Feb''Mar''Apr''May''Jun''Jul''Aug''Sep''Oct''Nov''Dec']
      }
    ],
    yAxis: [
      {
        type'value'
      }
    ],
    series: [
      {
        name: 'LastYear',
        type'bar',
        data: lastYear
      },
      {
        name: 'ThisYear',
        type'bar',
        data: thisYear
      }
    ]
  }
}

function initChart(canvas, width, height, dpr{
    chart = echarts.init(canvas, null, {
      width: width,
      height: height,
      devicePixelRatio: dpr // new
    });
    canvas.setChart(chart);
    
    var option = getOption()    // getOption()  图表配置函数
  
    chart.setOption(option);


    return chart;   
  }


Page({


    /**
     * 页面的初始数据
     */
    data: {
        ec:{
            onInit: initChart
        }


    },
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options{
      getData()      
    },

})
回答关注问题邀请回答
收藏

4 个回答

  • 竹林遇风🎋
    竹林遇风🎋
    2023-03-30

    请问楼主这个问题后来解决了吗

    2023-03-30
    有用
    回复
  • xac
    xac
    2022-03-04

    就是你的echarts还没渲染完 就给了数据了

    2022-03-04
    有用
    回复
  • 再见,电脑崽
    再见,电脑崽
    2022-03-04

    你这明显是图表初始化执行时机早于数据请求了。

    2022-03-04
    有用
    回复
  • 翔荣
    翔荣
    发表于移动端
    2022-03-04
    2022-03-04
    有用
    回复
登录 后发表内容