gpt4 book ai didi

node.js - useNavigate - 无效 Hook 调用。钩子(Hook)只能在函数组件的内部调用

转载 作者:行者123 更新时间:2023-12-05 03:32:21 25 4
gpt4 key购买 nike

我在前端使用 ReactJS,在后端使用 NodeJS,我尝试使用导航功能进行重定向,但出现错误。我应该怎么做?我哪里不见了?报名成功如何跳转?

我的行动:

export const signup = (formData,navigation) => async (dispatch) => {
try {
const { data } = await API.signUp(formData)
dispatch({type:AUTH,payload:data})
let navigate = useNavigate();
navigate("/");
} catch (error) {
dispatch({type:SIGNUP_FAIL,payload:
error.response && error.response.data.message ? error.response.data.message : error.message
})
}
}

我的组件:

const signUpForm = (e) => {
e.preventDefault()
if(!login){
dispatch(signup(form,navigation))
}
}

最佳答案

您需要将钩子(Hook)移到函数之外:

const signUpForm = (e) => {
let navigate = useNavigate();
e.preventDefault()
if(!login){
dispatch(signup(form,navigation,navigate))
}
}

和:

export const signup = (formData,navigation,navigate) => async (dispatch) => {
try {
const { data } = await API.signUp(formData)
dispatch({type:AUTH,payload:data})
navigate("/");
} catch (error) {
dispatch({type:SIGNUP_FAIL,payload:
error.response && error.response.data.message ? error.response.data.message : error.message
})
}
}

关于node.js - useNavigate - 无效 Hook 调用。钩子(Hook)只能在函数组件的内部调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70485555/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com