質問: { someproperty: { flag:true } } しかし、このように状態を更新すると、this.setstate({ someproperty.flag: false }); うまくいきません。どうすればこれを正しくできますか?
回答: 入れ子にすることは実際にはコンポーネントの状態をどのように扱うべきかということではありませんが、単層の入れ子にするのが簡単なこともあります。こんな状態にstate = { contact: { phone: '888-888-8888', email: 'test@test.com' } address: { street:'' }, occupation: { } } 使用できる再利用可能なメソッドはこのようになります。handlechange = (obj) => e => { let x = this.state[obj]; x[e.target.name] = e.target.value; this.setstate({ [obj]: x }); }; それからあなたがアドレスしたいそれぞれのネスティングのためのobj名を渡すだけで...<textfield name="street" onchange={handlechange('address')} />