Arrays 将状态设置为二维数组-ReactJS
我有一个2D数组,我需要在componentWillReceiveProps中更新它,但它没有得到更新 这是我的状态Arrays 将状态设置为二维数组-ReactJS,arrays,reactjs,collections,Arrays,Reactjs,Collections,我有一个2D数组,我需要在componentWillReceiveProps中更新它,但它没有得到更新 这是我的状态 this.state={ conditionRaw:[[]] } 这就是componentWillReceiveProps方法 componentWillReceiveProps(nextProps){ let rules = {conditionRaw:[[]]}; if (nextProps.rootO
this.state={
conditionRaw:[[]]
}
这就是componentWillReceiveProps方法
componentWillReceiveProps(nextProps){
let rules = {conditionRaw:[[]]};
if (nextProps.rootObject._id !== ""){
rules["conditionRaw"] = nextProps.rootObject.conditionRaw
this.setState({conditionRaw: rules.conditionRaw})
console.log("DENEMEBİRLKİ", this.state.conditionRaw)
}
}
我的下一个程序已满,但我想我在设置状态时失败了。您的控制台日志:
console.log("DENEMEBİRLKİ", this.state.conditionRaw)
可能有误导性,因为setState()
是异步的。请尝试以下方法:
this.setState({conditionRaw: rules.conditionRaw}, () => {console.log(this.state.conditionRaw);});
this.setState({conditionRaw:rules.conditionRaw},()=>{console.log(this.state.conditionRaw);})代码>这意味着什么?返回一个空数组@nocebody可能是Wow的副本,是的,它现在返回filled。这意味着我成功地更新了我的状态,对吗?是的,setState
是异步的。总是使用这个回调函数来检查wheter是否改变了很多hanks!我现在记不清你的答案。10分钟后,我会做的。没问题!Thanks@BurakULU请您记下我的答案:)