Controlled ComponentsとsetStateについて読んだ後、私はReactの一貫したメンタルモデルを構築することに問題があります。setStateが非同期であるにもかかわらず、Reactの制御コンポーネントが機能する理由
言及したドキュメントからの制御されたコンポーネントの例、私の質問に関連する次の断片が含まれています。ユーザーは高速で、任意の編集操作を行うことができるので、とsetState
はおそらくです:
handleChange(event) {
this.setState({value: event.target.value});
}
render() {
return (
<input type="text" value={this.state.value} onChange={this.handleChange}/>
)
}
質問です非同期では、event.target.value='a'
でonChange
が呼び出され、setState({ value: 'a'})
となった瞬間t0で、ユーザがテキストを 'b'に変更し、瞬間t2でsetStateでキックインされた要求がキックインされ、テキストは古い値 'a'に置き換えられますか?
同時に1人のユーザーだけが1つのコンポーネントと対話できます。これらのことがデータベースから得られた値である場合、データを共有している場合は、最新のデータセットを持っている場合のみ保存が行われ、それ以外の場合はコンポーネント1のユーザーがapply – Icepickle