首页 > 解决方案 > 无法返回调用 React Router - Redirect 的原始页面

问题描述

问题:如果使用 react-router 重定向在PageA上找不到某些数据,则当前应用程序正在将用户从 PageA重定向到ErrorPage 。现在,当用户在ErrorPage上并单击浏览器后退按钮时。它不带回PageA 这是一个代码示例` //PageA - 这个组件在 BrowserRouter

import React from 'react'

const PageA = () = {
    const data = null
    return (
        data ? (<PageAComponent />) : (
        <Redirect
                to={{
                        pathname: "/errorPage",
                        state: { referrer: 'PageA' }
                }}
        />
        )
    )
}

//错误页面

import React from 'react'

const ErrorPage = () = {
    return (
        <>.....something is displayed.....</>)
    )
}

标签: reactjstypescriptreact-router-dom

解决方案


根据文档,您需要将push道具设置Redirecttrue以防止它在重定向时替换历史堆栈上的当前条目。


推荐阅读