Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs React Router Dom-设置动态路由的路由名称并在同级组件中访问它_Reactjs_React Router Dom - Fatal编程技术网

Reactjs React Router Dom-设置动态路由的路由名称并在同级组件中访问它

Reactjs React Router Dom-设置动态路由的路由名称并在同级组件中访问它,reactjs,react-router-dom,Reactjs,React Router Dom,我正在为我的react项目使用react路由器dom,我有这个基本的路由结构 {getRoutes(已验证,privateRoutes)} 在这里,当呈现带有动态路径/:courseSlug的路由时,我想知道导航栏中的组件 在Navbar组件中,我已使用WithRouterHOC导出,如下所示 export default withRouter( connect(mapStateToProps, mapDispatchToProps)(NavbarComponent) ) 当我尝试访问

我正在为我的react项目使用
react路由器dom
,我有这个基本的路由结构


{getRoutes(已验证,privateRoutes)}
在这里,当呈现带有动态路径
/:courseSlug
的路由时,我想知道
导航栏中的组件

Navbar
组件中,我已使用
WithRouter
HOC导出,如下所示

export default withRouter(
  connect(mapStateToProps, mapDispatchToProps)(NavbarComponent)
)
当我尝试访问
位置
历史
时,没有任何属性可以用来表示呈现了
CourseDetailsContainer

    const { history, location } = this.props;
    console.log({ props: this.props });
    console.log({ history, location });

如何解决此问题?

您应该能够利用
道具。computedMatch

let courseSlug = props?.computedMatch?.params?.courseSlug
但是,我不能100%确定您是否可以通过
组件访问它,因此您可能需要在
组件中检查它,然后将布尔值传递回
,或者使用redux配置在组件之间传递数据