当数据须要异步加载时render猎取不到数据能够会报一些毛病,此时须要在render函数中加一个推断
componentWillMount (){
axios.get("http://127.0.0.1:8088/user/userlist").then(res =>{
this.setState({
dataSource:res.data.data,
haveData:true
})
})
}
render() {
/* 注重下面这个三目运算符,实行到render时,state对象的haveData为false,
所以此时页面展现 loading,当异步猎取数据胜利时,
haveData值为true,此时又一次实行render,
此时将须要的数据传给视图,准确展现到页面 */
return (
!this.state.haveData?"loading":(
<Table columns={columns} dataSource={this.state.dataSource} />
)
)
}