PrivateRoute无法使用推送

时间:2017-06-28 14:12:24

标签: reactjs react-redux react-router-v4

我使用PrivateRoute验证用户是否已登录,使用以下代码可以正常工作

<Route
    {...rest}
    render={props => (
    rest.user ? (
        <Component {...props}/>
    ):(
        <Redirect to={{
            pathname: '/signin',
            state: {from: props.location}
        }}/>
    )
)}/>

const mapStateToProps = (state, ownProps) => {
    return {
        user: state.user.currentUser,
        routeProps: {
            exact: ownProps.exact,
            path: ownProps.path
        }
    };
};

这很有效,但是如果导航到任何其他也被“私有”的路线。并点击浏览器&#39;返回&#39;按钮,它只是停留在第二页,虽然地址栏中的URL更改。 如果我用Route替换PrivateRoute,那么一切正常。 我在这做错了什么?这就是设置路由的方式

<PrivateRoute exact path="/a" component={ListComponent}/>
<PrivateRoute exact path="/a1" component = { AddContainer } />
<PrivateRoute exact path="/a1/:id" component = { AddContainer } />

0 个答案:

没有答案