React中 ,通过ref绑定使用echarts ,该部分需使用定时器 隔断时间重新渲染数据,偶尔会出现这个ref 获取不到
相关代码
componentWillReceiveProps(nextProps){
... //由于定时器配置的时间从父组件传值过来 componentDidMount 获取不到 所以放在这里
this.interval = setInterval(() => {
this.initchart()
},time)
}
initchart(xzqh){
console.log(this.chart) //定时器开启一段时间后 偶尔会出现 this.chart 获取不到
}
render(){
//ref绑定的dom
<div ref={(c) => this.policeRondEhart = c} style={{ width: '100%', height: '100%' }}></div>
}
个人疑惑是点 是因为当组件state变化时 组件render函数会重新渲染 会导致 ref获取不到吗 ???
setInterval 里面的this指向window ,需要再setInterval 外面 let vm = this,用vm调用就可以