首页 > 解决方案 > 为什么 React 必须使用 setState 进行状态更新?

问题描述

为什么 react 必须使用 setState 更新状态(树协调)。而不是简单地初始化 this.state.color = 'red'; 假设先前的颜色值为“绿色”。

标签: reactjs

解决方案


这就是 React 的构建方式。

这个概念是你不应该可变地改变状态,像这样:

this.state.color = 'red';

相反,您应该使用 setState:

this.setState({color: 'red'});

其背后的想法是,为了跟踪状态的变化并根据变化重新渲染组件,您必须使用 setState,因为在 setState 之后,会触发渲染功能。


推荐阅读