路由器版本 4+ 的最简单解决方案:我们使用 "react-router-dom": "4.3.1"
它不适用于版本 5+
从初始化的位置导出浏览器历史记录并使用 browserHistory.push('/pathToRedirect'):
必须安装包历史(例如:“history”:“4.7.2”):
npm install --save history
在我的项目中,我在 index.js 中初始化浏览器历史记录:
import { createBrowserHistory } from 'history';
export const browserHistory = createBrowserHistory();
在动作中重定向:
export const actionName = () => (dispatch) => {
axios
.post('URL', {body})
.then(response => {
// Process success code
dispatch(
{
type: ACTION_TYPE_NAME,
payload: payload
}
);
}
})
.then(() => {
browserHistory.push('/pathToRedirect')
})
.catch(err => {
// Process error code
}
);
});
};