我有一个专用的Route / something,我希望只有登录才能访问它。我正在使用带有状态的重定向,但是在目标位置。状态未定义。
这是重定向:
<Redirect
to={{
pathname: "/login",
state: { referrer: props.location }
}}
/>
在目标位置,我试图访问它,但状态未定义。
this.props.location.state is undefined and I can't get referrer
我正在关注this example。可能是错误吗?
答案 0 :(得分:0)
没有,这不是错误。实际上,当您从页面A重定向到页面B 时,通过以下方式,您肯定会获得this.props.location.state
。
<Redirect to={{pathname: "/b", state: { referrer: currentLocation }}} />
除此之外(直接打开页面A或来自页面B之外的其他页面),您将获得状态undefined
。因为在这种情况下,您没有将道具state
传递到A页。