Hook 是 React 16.8 的新增特性。它可以让你在不编写 class 的情况下使用 state 以及其他的 React 特性。
为什么使用Hooks?
在我们开发大型项目过程中,组件变得冗长复杂且难以复用, 无状态组件只能通过 props注入,无法使用state 状态,没有副作用,无法访问API进行数据异步更新。无状态组件无法使用声明周期对于代码程序流程进行控制。
Hooks的本质:为函数组件注入特殊的功能,赋予类组件相同的功能。
Hooks的作用:是为了给函数组件加上状态。
基础 Hook:useState,useEffect,useContext
额外的 Hook:useReducer,useCallback,useMemo,useRef,useImperativeHandleuseLayoutEffect, useDebugValue