在上一篇文章《Immutable 在 JavaScript 中的应用》 中主要介绍了 Immutable 之于 JavaScript。而基于 Immutable 的特性,将其应用在 React 项目的开发中非常合适,解决了 React 中的一些痛点,能进一步提升 React 组件的性能以及更好的管理组件的状态。
在介绍 Immutable 如何在 React 中应用之前,先来谈谈 React 组件是如何更新的。
React 是基于状态驱动的开发,可以将一个组件看成是一个有限状态机,组件要更新,必须更新状态。
通常说的组件的状态就是组件的 state
对象,state
是可以由当前组件自行修改更新的,这种自更新的状态的为了便于理解区分可以称之为“动态”的状态。但除了更新 state
外,组件还可以通过 props
来更新,props
属性不能由组件自行修改,必须由父组件来修改,然后再传递给当前组件,更新组件的 props
也能引起组件的更新,可以将 props
称之为“静态”的状态。这样的状态区分是广义上的,如果你不认可 props
也是状态也没关系,这里可以不用拘泥于文字。