【问题标题】:React Router v4 Redirect Passing State UndefinedReact Router v4 重定向传递状态未定义
【发布时间】:2019-07-24 01:44:03
【问题描述】:

我有一个私有 Route /something,我希望它只有在登录后才能访问。我正在使用带有状态的 Redirect,但在目标 location.state 上是未定义的。

这里是重定向:

<Redirect
  to={{
    pathname: "/login",
    state: { referrer: props.location }
  }}
/>

在目的地,我试图访问它,但我的状态未定义。

this.props.location.state is undefined and I can't get referrer

我正在关注this example。可能是错误?

【问题讨论】:

    标签: javascript reactjs react-redux react-router


    【解决方案1】:

    不,这不是错误。其实当你从页面A重定向到页面B时,通过以下方式你肯定会得到this.props.location.state

    &lt;Redirect to={{pathname: "/b", state: { referrer: currentLocation }}} /&gt;

    除此之外,(直接打开页面 A 或来自页面 B 以外的页面)您将获得状态 undefined。因为在那种情况下,您不会将道具 state 传递到页面 A。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-01-29
      • 2017-10-04
      • 1970-01-01
      • 2017-11-02
      • 2017-11-14
      • 2017-02-20
      • 1970-01-01
      相关资源
      最近更新 更多