函数组件
函数组件任何情况下都会重新渲染。它并没有生命周期,但官方提供了一种方式优化手段,那就是 React. Memo。
更新情况
如果不实现 shouldComponentUpdate 函数,那么有两种情况触发重新渲染。
- 当 state 发生变化时。这个很好理解,是常见的情况。
- 当父级组件的 Props 传入时。无论 Props 有没有变化,只要传入就会引发重新渲染。
高阶组件
参考资料
一篇非常棒的对比文章,这篇文章很长,但是通篇都在论证这一句话:
函数组件会捕获 render 内部的状态,这是两类组件最大的不同。 > 函数组件更加契合 React 框架的设计理念。
UI = render (data)