Javascript 使用react路由器dom';让我们用状态重定向
我一直在关注react router 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
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 }
}}
/>