Javascript 使用react路由器dom';让我们用状态重定向

Javascript 使用react路由器dom';让我们用状态重定向,javascript,reactjs,redux,react-router,react-router-dom,Javascript,Reactjs,Redux,React Router,React Router Dom,我一直在关注react router dom的文档。现在,我有一个这样的组件,呈现以下内容: return <Redirect to={{ pathname: '/login', state: { previousPath: path } }} />; 返回; 但是,我不确定如何在我的新路径中访问处于状态的previousPath。文件对此并不清楚。如何访问以前的路径 您的父组件之一应该是带有道具的Route:匹配、位置、历史。您应该能够使用通过props.location.st

我一直在关注react router dom的文档。现在,我有一个这样的组件,呈现以下内容:

return <Redirect to={{ pathname: '/login', state: { previousPath: path } }} />;
返回;

但是,我不确定如何在我的新路径中访问处于状态的
previousPath
。文件对此并不清楚。如何访问以前的路径

您的父组件之一应该是带有道具的
Route
:匹配、位置、历史。您应该能够使用通过
props.location.state
创建的状态来访问您的
previousPath


请参阅React Router文档中的。

使用
ownProps解决了此问题,请参见:

在我的
Login
组件(重定向的位置)中,我将此添加到我的
MapStateTrops

const mapStateToProps = (state, ownProps) => ({
    ...
    previousPath: ownProps.location.state.previousPath,
});
然后在我的道具中,现在我可以访问
previousPath

根据:



谢谢朱利安。我能够将
previousPath
设置为正确的值。。。但是,我想知道如何在另一个组件中访问
previousPath
?i、 e.从RedirectmapStateToProps渲染的组件来自redux:P,如果你看我更新的答案,你会发现我比你快了半个多小时
    <Redirect
  to={{
    pathname: "/login",
    search: "?utm=your+face",
    state: { referrer: currentLocation }
  }}
/>