正常写法
- 导入
useDispatch
和useEffect
以及useSelector
- 在
useEffect
中使用dispatch
发送请求 - 通过
useSelector
从redux中 获取数据
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15import React, { useEffect } from 'react' import { useDispatch, useSelector } from 'react-redux' import { getInfo } from '@/store/aciton/xxxx' export default function App () { const dispatch = useDispatch() // 1. 发请求 useEffect(() => { // 派发action, 发请求 dispatch(getInfo()) }, []) // 2. 获取数据 const xxx = useSelector((state) => state.xxx) return <div /> }
通过封装自定义Hooks,简化发请求和获取数据的步骤
复制代码
1
2
3
4
5
6
7
8
9
10
11import React, { useEffect } from 'react' import { useDispatch, useSelector } from 'react-redux' export default function useInitState (actionName, stateName) { const dispatch = useDispatch() useEffect(() => { dispatch(actionName()) }, []) const state = useSelector((state) => state[stateName]) return state }
使用方式
const xxx = useInitState(action名(),'store分支')
复制代码
1
2
3
4
5
6
7
8
9
10import React from 'react' import useInitState from '@/hooks/useInitState' export default function App() { const xxx = useInitState(getInfo,'xxxx') return ( <div> </div> ) }
最后
以上就是搞怪小蜜蜂最近收集整理的关于封装自定义Hooks发请求并从Redux中拿初值的全部内容,更多相关封装自定义Hooks发请求并从Redux中拿初值内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复