小程序
小游戏
企业微信
微信支付
扫描小程序码分享
当我使用echarts组件时,我组件中的值要更改,那我如何让他重新把数据渲染上去呢。
3 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
用wx:if 来控制canvas组件的显示与不显示,重新显示画布组件,就会重新渲染
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
上面的答案都不靠谱,我自己尝试摸索找到了终极答案,就是通过组件身上的bindinstance属性,拿到了e.detail的实例对象,用一个全局变量去接收,再进行.setOption(option,true)就成功进行重新渲染了
重新setOption就可以了
lineStyle: {
color: '#DDD'
}
},
legend: {
data: ['昨日', '今日'],
show: true,
left: 15,
top: 10,
icon: "pin",
color: ['#3E5BB7', "#F07043"],
series: [{
name: '昨日',
data: yesterday,
type: 'line',
smooth: true
}, {
name: '今日',
data: todayData,
}]
})
return chart1Model;
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
用wx:if 来控制canvas组件的显示与不显示,重新显示画布组件,就会重新渲染
上面的答案都不靠谱,我自己尝试摸索找到了终极答案,就是通过组件身上的bindinstance属性,拿到了e.detail的实例对象,用一个全局变量去接收,再进行.setOption(option,true)就成功进行重新渲染了
重新setOption就可以了
我是先把这个chart1定义成全局变量了,然后把初始化的这部分代码独立出来,里面的data的值也设置为全局变量,每次值变化的时候,调用这个初始化方法就行,或者你把data的值做为参数传入也可以,我这边定义为全局主要是因为好几个地方使用,你可以根据你的情况进行调整
lineStyle: {
color: '#DDD'
}
}
},
legend: {
data: ['昨日', '今日'],
show: true,
left: 15,
top: 10,
icon: "pin",
},
color: ['#3E5BB7', "#F07043"],
series: [{
name: '昨日',
data: yesterday,
type: 'line',
smooth: true
}, {
name: '今日',
data: todayData,
type: 'line',
smooth: true
}]
})
return chart1Model;
})
},