什么是 Hook
Hook 是 16.8.0 版本开始新增的特性,允许在函数组件中使用不同的 React 功能。常用的 Hook 主要有 State Hook 和 Effect Hook 等。Hook 实际上就是 JavaScript 函数,并且只能在函数最外层调用,不能在循环、条件、子函数中调用,而且仅能够在 React 组件中使用。
Hook 可以说是函数组件中的功能核心,通过 Hook,函数组件可以实现各式各样的功能。Hook 不仅有 React 提供的,而且也可以自定义自己需要的,几乎任何你所能想到的动作逻辑,都可以被定义成一个 Hook。在 React 中,Hook 通常都十分好认,它们都是使用use
开头的,而且 React 也要求自定义的 Hook 也要遵循这个命名规则。
在一个 React 项目中,自定义 Hook 最常用的的场景就是用来在组件间共享逻辑,这在后面的章节中会逐渐体现出来。