は私がどちらが良いでしょうか?多くのコンポーネントでディスパッチを使用するか、データを収集してからすべてをディスパッチしますか?
<Component>
<ChildComponent1 />
<ChildComponent2 />
<ChildComponent3 />
<ChildComponent4 />
<ConfirmButton />
</Component>
子コンポーネントがどのように見えるのコンポーネントがあります。各選択値の変更に
@connect(data => data)
class ChildComponent1 {
change() {
this.props.dispatch(action.someAction());//it dispatch to store
}
render() {
return <select onChange={this.change}>{render select}</select>
}
}
子コンポーネント値の派遣を、私はすべての子コンポーネントからのデータを収集するまで、私は何もしません。 収集した後にすべてのデータを送信するほうがよいでしょう。
render(
return <Component>
<ChildComponent1 onChange={(data) => this.setState({data})} /> //uses arrow function in this place it is bad, but it is example
<ChildComponent2 onChange={(data1) => this.setState({data1})} />
<ChildComponent3 onChange={(data2) => this.setState({data2})} />
<ChildComponent4 onChange={(data3) => this.setState({data3})} />
<ConfirmButton onApply={() => this.props.dispatch(this.getState())} />
</Component>
)
より良いアプローチは何ですか?
を追加する必要があり、このコードを実行するために?ボタンがクリックされた場合は、そのボタンをディスパッチしてクリックします。ユーザーが選択を停止した場合は、setTimeoutを使用してディスパッチします。 –
これは簡単な例ですが、私はユーザー入力の検証を持っています。 –