異なる関数でsetState()
を使用する必要があります。要点は、現在の状態や用途に応じて、同じ状態属性( 'test'、 'options')を異なる値で操作し、他の内部関数(this.doSomething()
)を呼び出します。 問題はfunction1()
にあり、私はすべての機能を次々に呼び出します。 function3()
にある'this.state.test' === '2'
の条件が厳しいことをどうすれば保証できますか?異なる関数呼び出しの中でsetState()を呼び出す
私は、非同期のsetState()
があり、コールバック関数がありますが、私の設定のような複数の関数を持つときにこのコールバックを使用するにはどうすればよいですか?私は、あなたがフィニッシュに約束やコールバックを使用することができます
種類が
function1() {
...
this.function2();
this.function3();
this.function4();
...
}
function2() {
this.doSomething();
this.setState({
options: 'abc',
test: '2'
});
...
}
function3() {
this.doSomethingElse();
if (this.state.test === '2') {
this.setState({
options: 'def'
test: '3'
});
}
...
}
function4() {
this.doAnything();
this.setState({
options: 'xyz',
test: '4'
});
...
}
は、あなたが() '関数2('のようにはfunction1 'に約束を持つ関数2、3と4をカスケード接続してみてください可能性がある)、その後(関数3)。。 then(function4) ' – Redu