在React中成功执行post请求后,可以使用以下两种方式进行正确的重定向:
例如,在post请求成功的回调函数中,可以使用以下代码进行重定向:
import { useHistory } from 'react-router-dom';
function MyComponent() {
let history = useHistory();
const handlePostRequest = () => {
// 执行post请求
// ...
// 请求成功后进行重定向
history.push('/new-page');
};
return (
<button onClick={handlePostRequest}>提交请求</button>
);
}
例如,在组件中定义一个状态isPostSuccessful
来表示post请求是否成功,然后根据这个状态来进行条件渲染:
import React, { useState } from 'react';
function MyComponent() {
const [isPostSuccessful, setPostSuccessful] = useState(false);
const handlePostRequest = () => {
// 执行post请求
// ...
// 请求成功后设置标志位为true
setPostSuccessful(true);
};
// 根据标志位的值进行条件渲染
if (isPostSuccessful) {
return <Redirect to="/new-page" />;
} else {
return (
<button onClick={handlePostRequest}>提交请求</button>
);
}
}
在以上两种方式中,需要注意引入相应的库或组件,并按照具体场景进行适当的调整。此外,还需根据具体需求和业务逻辑来选择合适的重定向方式。
领取专属 10元无门槛券
手把手带您无忧上云