useReducer:为了解决复杂的state带来的不便,React为 我们提供了一个新的使用state的方式Reducer横空出世,reducer单词的意味减少,而reducer可以翻译为当你的state的过于复杂时你就可以使用对state进行整合的工具,当然这个是玩笑的,个人认为Reducer可以翻译为整合器,它的作用就是将那些和同一个state相关的所有函数都整合到一起方便在组建中进行调用。
useReducer 函数要在函数体中直接调用(函数组件内部)
useReducer的使用:useReducer(reducer, initalArg , init)
useReducer有三个参数:
1.reducer 函数 执行dispatch的命令
2.initalArg: state的初始值,作用和useState()中的值一样
3.待定
const [count,dispatch]= useReducer(reducer,initalArg)
返回值:
返回值第一个参数:state用来获取最新的值
返回值第二个参数:state修改派发器 通过派发器可以发送操作state的命令,具体的修改行为将会由reducer函数执行
补充:
reducer::整合函数 对于我们当前state的所有操作都应该在该函数中定义该函数的返回值 ,会成为state的新值,reducer在执行时,会收到两个参数:state当前最新的state action 它是一个对象,在对象中会存储,dispatch所发送的指令。