react Hook是react16.8版本新增加的一种可以让函数组件使用state和其它react特性的函数。
在hook之前,react组件被分为函数组件与类组件两种,函数组件只能写出一个静态的UI组件,没有状态,没有生命周期方法。而类组件可以拥有自己的状态和生命周期方法,但是class组件在编写过程中容易出现很多问题,比如this绑定和大量代码难以维护等。为了解决这些问题,react官方团队在16.8版本中引入了hook
通过hook,函数组件可以拥有相似于class组件的功能,例如state状态管理、生命周期、Context,Refs,并且可以在不需要修改UI结构的情况下实现复杂的特性,避免了类组件的一些问题。