我正在使用react-router,我想在用户不在根目录而不在/ login路径中时呈现菜单组件.这就是我到目前为止所拥有的
<Route path="/:subpath" component={TopMenuComponent} /> <div> <Route exact path="/" render={props => ( <LoginContainer {...props} setTitle={this.setTitle} /> )} /> <Route path='/landing' component={LandingComponent} /> </div>
负责不在’/’位置渲染TopMenuComponent组件,但是当用户在/ login路径中时,如何避免它渲染TopMenuComponent?我总是可以创建另一个组件并将其包装起来,但我认为这对此来说太过分了.
React Router的
path strings
匹配依赖于
Path To Regex
.
因此,您可以使用regular expressions
指示路由不为某些路径呈现.
以下实现在所有路径上呈现,条形“/”和“/ login”:
<Route path="^(?!.*(/|/login)).*$" component={TopMenuComponent}/>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。