react 中有关 setState 的学习

state用于设置默认值,在constructor 中使用,在修改默认值时  使用  this.setState()  坑在此处 !!!!

this.setState 并不会实时更新  state  的值,而是首先要将所有对象合并到一起,然后仅用该对象进行一次“set-State”

例如:

                      react 中有关 setState 的学习
面对这种 多次 setState() 调用 的情况,为了避免重复做上述大量的工作,React 并不会真地完整调用三次 "set-state";相反,它会把这些部分更新打包装好,一次性搞定。”朋友们,这就是所谓的批处理!!

函数式setState :

当面对多次函数式 setState() 调用时,React 并不会将对象合并(显然根本没有对象让它合并),而是会按调用顺序将这些函数排列起来

例如:

this.setState((prevState, props) => ({
formDisplayed: !this.state.formDisplayed
}));