概述
正常写法
- 导入
useDispatch
和useEffect
以及useSelector
- 在
useEffect
中使用dispatch
发送请求 - 通过
useSelector
从redux中 获取数据
import 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,简化发请求和获取数据的步骤
import 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分支')
import React from 'react'
import useInitState from '@/hooks/useInitState'
export default function App() {
const xxx = useInitState(getInfo,'xxxx')
return (
<div>
</div>
)
}
最后
以上就是搞怪小蜜蜂为你收集整理的封装自定义Hooks发请求并从Redux中拿初值的全部内容,希望文章能够帮你解决封装自定义Hooks发请求并从Redux中拿初值所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复