私の最上位コンポーネントには、状態を更新する機能があります。これを私の主な状態を更新できるように、別の子要素に渡します。私のトップレベルのコンポーネントで配列のn番目のアイテムを親の状態でReactの子から更新しますか?
:これは働いている
updateValue(item, value) {
this.setState({[item]: parseInt(value)});
}
は、これまでしかし、今私は、配列のn番目の項目を更新する必要があります。
私のトップレベルの状態は、このようなものです:
this.state = {
chosenExercises: [
'Bench press',
'Squat',
'Pull up'
]
};
など何かをしようとしている私の子コンポーネントイム中:私の状態はその後になるよう
this.props.updateValue('chosenExercises'[1], 'New exercise');
を:
this.state = {
chosenExercises: [
'Bench press',
'New exercise',
'Pull up'
]
};
これは正しい方法ですか?または、私の状態はキーバリューペアでなければなりませんか?
this.state = {
chosenExercises: {
0: 'Bench press',
1: 'New exercise',
2: 'Pull up'
}
};
これは潜在的にベストプラクティスであるターゲットしやすいが、イムわからない演習を行うの私の問題の一部を解決するだろう。
あなたの状態はオブジェクトです。したがって、必要な任意の形式で状態の内部にデータを保持することができます –