2017-06-16 17 views
0

playersの中にオブジェクトをドロップすることで状態を変更しました。状態は即座に変更されないようですか?それは私が別の場所で作った機能なのか、それともバグですか?(React.js)なぜ状態は即座に変更されないのですか?

console.log("Before(length):"+this.state.players.length); 
players=players.filter(player => player.id !== id2);} 
this.setState({players}); 
console.log("After(length):"+this.state.players.length); 

結果は後から5でなければなりません

Before(length):6 
After(length):6 

のですか?

答えて

1

コンポーネントを更新するには、即時のコマンドではなくsetState()をリクエストと考えてください。知覚されたパフォーマンスをより良く知るためには、Reactが遅延させてから、いくつかのコンポーネントを1回のパスで更新してください。

https://facebook.github.io/react/docs/react-component.html#setstate

+1

この質問は、SO上で複数の重複があります。 –

関連する問題