相关疑难解决方法(0)

this.setState没有像我期望的那样合并状态

我有以下状态:

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)

这是预期的行为,是什么解决方案只更新嵌套状态对象的一个​​属性?

javascript reactjs

154
推荐指数
5
解决办法
7万
查看次数

标签 统计

javascript ×1

reactjs ×1