我正在开发React路由器4,我有一些像home, page1.., and page404这样的组件。我想重定向到page404,如果一个坏链接已经进入。
<Router>
<AppContainer>
<Route exact path={HOME_URL} component={Home}/>
<Route path={SEARCH_RESULTS_URL} component={SearchResults}/>
<Route path={PAGE_404} component={Page404}/>
</AppContainer>
</Router>有谁能建议一种方法。
发布于 2017-08-05 22:13:13
const routes = (
<BrowserRouter>
<Switch>
<Route path="/home" component={Home/>
<Route path="/about" component={About}/>
<Route path="*" component={NotFound}/>
</Switch>
</BrowserRouter>
);发布于 2017-08-05 11:11:34
这些文档似乎表明您必须将其包装在<Switch>中。
<Switch>
<Route exact path={HOME_URL} component={Home}/>
<Route path={SEARCH_RESULTS_URL} component={SearchResults}/>
<Route component={PAGE_404}/>
</Switch>发布于 2017-08-05 13:26:40
开关的工作方式是这样的,您可以给它最后一个带有呈现组件的路由,在我的例子中,我刚刚返回了一个段落。因此,如果用户转到您定义的404页面以外的URL,则会返回
<Router>
<Switch>
<Route exact path='/' component={Home}/>
<Route exact path='/about' component={About}/>
<Route path='/about/results' component={Results}/>
<Route path='/popular' component={Popular}/>
<Route render={function () {
return <p> 404 Page </p>
}} />
</Switch>
</Router>https://stackoverflow.com/questions/45521135
复制相似问题