我正在将状态设置为某些变量,但是发生的情况是,当我第一次调用onSub()
时,什么也没有发生,而当我第二次调用它时,第一次调用中的值就会反映出来,依此类推。我该怎么办?
onSub(){
this.setState({price:[...this.state.price,this.state.tprice],
Quantity:[...this.state.Quantity,this.state.tQuantity],
ItemName:[...this.state.ItemName,this.state.tItemName]
})
this.afterCall();}
afterCall(){
//i is Declared Globally
for(;i<this.state.price.length; i++){
price.push(<View key={i}><Text style={{paddingLeft:5}}>
{this.state.price[i]}</Text></View>)
}
答案 0 :(得分:1)
设置状态需要花费一些时间,this.setState
将进行回叫,一旦设置了状态,该回叫将被运行。您可以像这样
this.setState({ //set your item to state }, () => this.afterCall());
您可以在这里https://medium.learnreact.com/setstate-takes-a-callback-1f71ad5d2296
了解更多信息