2016-07-04 12 views
2

this.state.foo = "bar"のような反応コンポーネント状態の単一の変数をsetStateを呼び出さずに割り当てることはできますか?私は複数の場所で州の一部を変更する必要があり、私はオブジェクトスプレッド演算子を使用することができませんし、Object.assignがあまりにも冗長です。状態全体を再定義することなく、状態の一部だけを変更する方法は?ちょうどそれをトリガーできるように、反応することが重要ですので、あなたがsetStateではなく、インスタンス変数を使用する必要があります反応状態の単一変数を変更する

this.setState({ foo: 'bar')}; 

答えて

0

は適切にレンダリングされます。

DOMでdiffactアルゴリズムのリアクションが使用されるため、setStateを好きなだけ頻繁に呼び出すと効率的です。一つの変数にsetStateを呼び出すと変わらず他人を残すこと

注:

this.setState({ foo: 'bar' }); // Does not change foo2 
+0

あなたの答えはいくつかの説明の恩恵を受けるだろうが、あなたは完全に正しいですが、全く新しい状態オブジェクトを自分で作成する必要はありません。 –

2

それは状態の変化を知っているような

関連する問題