Reactjs 在React Router 4.x中状态不工作时重定向

Reactjs 在React Router 4.x中状态不工作时重定向,reactjs,redirect,state,react-router-v4,Reactjs,Redirect,State,React Router V4,我根本不知道为什么重定向上的以下状态无法在目标组件中访问 以下是路线: { path: '/logout', component: () => <Redirect to={{ pathname: '/login', state: {referrer: "logout"} }}/> }, { path : '/login', component: L

我根本不知道为什么重定向上的以下状态无法在目标组件中访问

以下是路线:

{
        path: '/logout',
        component: () => <Redirect to={{
            pathname: '/login',
            state: {referrer: "logout"}
        }}/>
},
{       path     : '/login',
        component: Login
}
当然,我的登录组件是由HOC withRouter()包装的。不过我正在使用react路由器配置。不知道这是否与它有关

有人对此有好主意吗

也许我可以通过检查location.history来选择一个解决方法,看看我是否来自注销,如果这是为了重定向而放在历史记录中,但我更愿意理解为什么这种状态不起作用


谢谢

因为
/login
是一个不同的路由,您应该有签入
组件安装
生命周期方法和
不在组件安装更新
中,因为路由将安装并且不会重新呈现

componentDidMount() {

        if(this.props.location.state !== undefined) {
            alert("i come from logout");
        }
}

很抱歉,但这没有任何区别。您是否也直接访问登录屏幕而不是从注销处访问
componentDidMount() {

        if(this.props.location.state !== undefined) {
            alert("i come from logout");
        }
}