我有以下状态:
this.setState({ selected: { id: 1, name: 'Foobar' } });
Run Code Online (Sandbox Code Playgroud)
然后我更新状态:
this.setState({ selected: { name: 'Barfoo' }});
Run Code Online (Sandbox Code Playgroud)
由于setState被假定为合并,我希望它是:
{ selected: { id: 1, name: 'Barfoo' } };
Run Code Online (Sandbox Code Playgroud)
但相反它吃了id,状态是:
{ selected: { name: 'Barfoo' } };
Run Code Online (Sandbox Code Playgroud)
这是预期的行为,是什么解决方案只更新嵌套状态对象的一个属性?