これに似た配列構造がある場合:
person[{id: 0, firstname: 'john', surname: 'smith'},
{id: 1, firstname: 'jane', surname: 'smith'}]
次に、イベントハンドラーを使用して変更をキャッチし、setStateを使用して、次のような配列要素を更新するにはどうすればよいですか。
handleChangeEvent(newSurname, id){
this.setState({ person[id].surname : newSurname})
}
setState()
のアップデータコールバックを使用して、同じイベントティックでコンポーネントに対する他の状態変更を上書き(または上書き)するリスクなしに、単一のアトミック操作で状態変更を実行します。
handleChangeEvent(surname, id) {
this.setState(({ people }) => ({
people: people.map(
person => person.id === id ? { ...person, surname } : person
)
}));
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加