Hook用中文来讲就是钩子的意思
` 简单的来讲 hook就是把class组件的特性勾到function组件中
` 在不编写 class 的情况下使用 state 以及其他的 React 特性
` Hook Api的索引分为
` 基础 Hook
` useState (状态钩子)
` useEffect (副作用钩子)
` useContext (上下文钩子)
` 额外的Hook
` useReducer
` useCallback
` useMemo
` useRef
` useImperativeHandle
` useLayoutEffect
` useDebugValue
基础 Hook
useState又称状态钩子
传入初始化状态 返回一个数组
一、首先 引入 React 中的 useState Hook
二、通过调用 useState Hook 声明了一个新的 state 变量
当然可以声明多个state变量
1 初始化状态 2 改变它的方法
三、当点击按钮触发时 把最新的count传给setCount 并重新渲染
useEffect又称副作用钩子
可以让你在函数组件中执行副作用操作
useEffect(Callback,List)
1 一个函数 2 一个依赖数组
数组用来监听数据变化
可以看做componentDidMount(请求数据),componentDidUpdate(更新数据) 和 componentWillUnmount(从 DOM 中移除时调用) 这三个函数的组合。
挂在后执行
挂在前执行
useContext
接收一个 context 并返回该 context 的当前值。当前的 context 值由上层组件中距离当前组件最近的 <MyContext.Provider> 的 value prop 决定。
useContext 的参数必须是 context 对象本身