Reactjs React无法通过Match访问我的url参数(?)
我的渲染功能仅包含我的路由器:Reactjs React无法通过Match访问我的url参数(?),reactjs,react-router,Reactjs,React Router,我的渲染功能仅包含我的路由器: return ( <Router> <Switch> <Route exact path='/' render={LandingPageComponent} /> <Route exact path='/signup' render={SignUpPageComponent}/> <Route exact path=
return (
<Router>
<Switch>
<Route exact path='/' render={LandingPageComponent} />
<Route exact path='/signup' render={SignUpPageComponent}/>
<Route exact path='/login' render={LogInPageComponent} />
<Route path='/profile/:username' render={ProfilePageComponent}/>
<Route render={ LandingPageComponent }/>
</Switch>
</Router>
)
我这样做是为了使我的渲染函数更整洁
我猜可能是因为我没有直接渲染组件,所以没有传递路由道具,所以我需要手动将其传递到组件中
但是,我可能完全错了。如果您希望能够从RouteProps访问match,则需要通过将其传递给组件来将其提供给组件
return (
<Router>
<Switch>
<Route exact path='/' render={LandingPageComponent} />
<Route exact path='/signup' render={SignUpPageComponent}/>
<Route exact path='/login' render={LogInPageComponent} />
<Route path='/profile/:username' render={(routeProps) => <ProfilePageComponent {...routeProps} />}/>
<Route render={ LandingPageComponent }/>
</Switch>
</Router>
返回(
}/>
)嗯。。。以前从未听说过routeProps。让我来调查一下谢谢你!这终于给了我想要的东西。我没有看到这方面的任何文档或示例。帮了我很大的忙。我正试图为你找到一些好的文档,但到目前为止只找到了一些文章。它们的信息量不是很高。
return (
<Router>
<Switch>
<Route exact path='/' render={LandingPageComponent} />
<Route exact path='/signup' render={SignUpPageComponent}/>
<Route exact path='/login' render={LogInPageComponent} />
<Route path='/profile/:username' render={(routeProps) => <ProfilePageComponent {...routeProps} />}/>
<Route render={ LandingPageComponent }/>
</Switch>
</Router>