为什么不直接在componetWillReceiveProps中改变状态

时间:2017-11-06 15:15:07

标签: reactjs setstate

React建议在componentWillReceiveProps中使用setState吗?由于componentWillReceiveProps在渲染更新之前就已经发生了,我相信在生命周期的这一部分中更新状态不会导致第二次重新渲染,它只会改变状态以及当前更新中的新道具。那么为什么不直接改变国家呢?例如,为什么不这样做:

componentWillReceiveProps (nextProps) {
  this.state.title = nextProps.title
}

上述的缺点或使用setState的优点如下:

componentWillReceiveProps (nextProps) {
  this.setState({title: nextProps.title})
}

0 个答案:

没有答案