呈现不等待数据请求

时间:2016-01-04 16:52:12

标签: reactjs

不确定原因,但我的渲染似乎还没有等待componentDidMount在渲染之前完成其请求。我有另一个组件。我不确定我搞砸了。

断裂:

componentDidMount() {
    if(this.isMounted()) {
        $.get('/filter/parameters')
            .done(parameters => {
                this.setState({parameters});
            })
            .fail(err => {console.error(err)});
    }
}

<SideNav parameters={this.state.parameters}
        selectedFilters={this.state.selectedFilters} 
        isOpen={this._isOpen}
        onProductChange={this._handleProductsChange} />

工作:

componentDidMount() {
    if(this.isMounted()) {
        $.get('/getPartLocal')
            .done(data => {
                this.setState({data: data})})
            .fail(err => console.error(err));
    }
}

<TestTable data={this.state.data}
        onHeaderClick={this.sortColumn}
        onRowSelect={this.updateSelectedRows} />

更新

现在它已经过了我有一个新问题:

我无法设置属性:

<DropDownMenu value={parameters.products[0].name} onChange={onProductChange}>

但我可以映射:

{parameters.products.map(obj => {
       return <MenuItem value={obj.name} primaryText={obj.name}/>
})}

为什么?

0 个答案:

没有答案