假设我有一个 React 组件,它有一个包含 10 个字段的“状态”:
this.state = {
field1: 1,
field2: 2,
... other fields
something: 'a'
};
在我的一个事件处理程序中,我决定要更新单个状态字段。这样做是否出于某种原因是不好的做法?
// state has 10 other properties not touched here, and I want them to
// retain their existing values
this.state.something = 'b';
this.setState(this.state);
或者我必须这样做:
this.setState({
field1: this.state.field1,
field2: this.state.field2,
... set other fields with current value
something: 'b'
});
我知道有些库可以轻松复制对象状态,只是想知道是否有必要这样做。我还应该补充一点,我已经尝试过这个并且它似乎有效,但我还没有在网上看到任何例子这样做,所以想知道是否有某种原因。