我在 vue 的单文件组件中写了如下代码:
echart 数据,option 我定义在了 data(){}当中
然后我执行了以下代码,在下面可以看到,我将返回结果放到了 option 的 data 中
that = this
this.postRequest('http://url?id='+
row.id).then(res=>{
if(res){
let arr = new Array(res.length)
for(let i=0;i<res.length;i++){
arr[i] = res.section[i]
}
that.option.xAxis.data = arr
that.option.series.data = res.people_num
}
})
//300 毫秒后执行画图函数
setTimeout(() => {
this.drawLine()
},,300)
然后 300 毫秒后执行了画图函数
//画柱状图和折线图的函数
drawLine(){
this.myChart = this.$echarts.init(document.getElementById("column"))
this.line_chart = this.$echarts.init(document.getElementById("line_chart"))
console.log(this.option.xAxis.data)
console.log(this.option.series.data)
this.line_chart.setOption(this.line_chart_option,true)
this.myChart.setOption(this.option,true)
}
这里我打印了一下数据,查看有没有在上面赋值成功,我从控制台查看到了,是赋值成功了的。。。
但是最后前端显示出来的柱状图和折线图并不是我赋值之后的数据,而是我赋值之前的数据。
这是咋回事?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/668366
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.