react调用setstate后发生了什么?

1.react会将传入的参数对象与组件当前已有的状态合并,并触发所谓的调和过程(Reconciliation).

2.经过调和之后,React会以相对高效地方式根据新的状态去构建新的React元素树,并着手重新渲染UI界面

3.React得到元素树后,React会自动计算出新树与老树节点间的差异,根据差异对界面进行最小化重渲染

4.在DIff算法中,React能够相对精确地知道哪些地方发生了变化以及如何改变,从而能够按需更新,而不是全部重新渲染。