在render里,有一个handleCreatrEventField方法,但是handleCreatrEventField方法中有个异步请求,我想使用async进行处理,但是渲染元素时就会报错,不能是object,求解决办法,谢谢
React 异步问题,求大神指点
viviprprpr
#1
oyb81076
#2
还有你能不能把你的handleCreatrEventField贴全,我实在想不到有什么情况下会需要在render中加异步方法的, 通常render中的异步都会通过state转为同步
async render(){// 这个写法是错误的
const data = await fetch();
return <div>{data}</div>
}
都会写成
state = {data: null, isLoading:true}
componentWillMount(){
fetch().then(data=> this.setState({data, isLoading: false}))
}
render(){
if (this.state.isLoading) return <div>Loading</div>
return <div>{this.state.data}</div>
}