1
我使用react-bootstrap-table来显示一些数据,并且数据来自ajax结果。使用ajax数据反应引导表
constructor() {
super();
this.state = {
data:[]
};
}
componentDidMount() {
this.loadData()
}
loadData() {
$.ajax({
url: 'url',
dataType: 'json',
success: function(data) {
this.setState({data: data});
}.bind(this)
});
}
render() {
return (
<BootstrapTable data={this.state.data}>
<TableHeaderColumn dataField="status">STATUS</TableHeaderColumn>
<TableHeaderColumn dataField="title" isKey={true}>TITLE</TableHeaderColumn>
<TableHeaderColumn dataField="type">TYPE</TableHeaderColumn>
<TableHeaderColumn dataField="start">test</TableHeaderColumn>
<TableHeaderColumn dataField="end">END</TableHeaderColumn>
<TableHeaderColumn dataField="days used">DAYS USED</TableHeaderColumn>
</BootstrapTable>
);
}
这是行不通的,但如果我把一些真实的数据给它,然后它会工作,像这样:
constructor() {
super();
this.state = {
data:[{id:1,name:"name"}]
};
}
看来,举表需要有非空数据让它工作。那么如何让表等待Ajax完成然后获取数据呢?
能否请您详细阐述更多的答案增加关于您所提供的解决方案多一点的描述? – abarisone