私は、複数のキーを持つ状態( "car")のオブジェクトを持っています。その1つは配列です( "features")。私がそれをやろうとしていることがいくつかあります。オブジェクトの中に入れ子になった配列の状態を更新する(ReactJS)
- 「機能の追加」ボタンをクリックするたびに、別の文字列(別の機能)を「機能」配列にプッシュしたいとします。
- それぞれの入力を入力するときに、 "features"配列内の各文字列/機能の状態を更新したいと考えています。
私はこれをかなりオンラインで調査しましたが、何も見つかりませんでした(おそらくこれは不可能なためです)。いずれにしても、ここに私のコードはです:ちょうど車にコピーし、プッシュを作成
class Car extends React.Component {
state = {
car: {make: 'Toyota', model: 'Camry', features: []},
}
handleChange = (e, index) => {
const value = e.target.value
let features = this.state.car.features.slice() // create mutable copy of array
features = features[index].concat(value)
this.setState({...this.state.car, features: features})
}
handleAddFeature =() => {
let features = this.state.car.features.slice()
features.push('')
this.setState({...this.state.car, features: features})
}
render() {
return (
{
this.state.car.features.map((f, index) => { return <input key={index} onChange={e => this.handleChange(e, index)}>{feature}</input>
}
<button onClick={this.handleAddFeature}>Add Feature</button>
)
}
}
"それぞれの入力を入力すると、"フィーチャー "配列の各文字列/フィーチャーの状態を更新できるようにしたいのですか? – adrice727