挂载组件 :
函数式组件:react会直接调用该函数,并自动传入props参数
class组件:react会new此组件,并自动传入props参数
更新组件:
函数式组件:更新时,会重新执行此函数
class组件:更新时,该class组件的实例会重新调用自己的render方法,也就是说原来的实例还是原来的实例。通过测试发现:更新时,constructor函数根本没执行,也就是说根本没有new出新的实例。只是原实例会重新调用自己的render方法。
多多使用函数式组件:
函数式组件没有自己的实例,并且函数式组件执行时会捕获当前时刻的props和state(闭包),因为函数式组件更新或者挂载时就是执行此函数,所以函数中定义的函数,就会有闭包现象,因为我们return了JSX出去,如果在JSX上面绑定了相应的事件。那么绑定的事件中就会捕获当前时刻的props和state。在React Hooks 中闭包是十分关键的。