React Router 4 - 不同的布局?
React Router 4 - Different Layouts?
我知道有人问过几次这个问题,但似乎没有一个真正适用于我。
我有这个
App.js
<React.Fragment>
<Switch>
<Route path="/members" component={MemberAreaComponent} />
<Route exact path="/" component={NonMemberAreaComponent} />
<Route component={NotFoundComponent} />
</Switch>
</React.Fragment >
在会员区组件我有
// other html above here
<div className="main-area">
<main>
<Switch>
<Route path="/members/home" component={HomeComponent} />
</Switch>
</main>
</div>
NonMemberAreaComponent
<div className="non-members-area-container">
<Route path="/login" component={LoginComponent} />
<Route path="/" component={NonMemberHomeComponent} />
</div>
当我尝试执行 /Login 时,我一直收到 "NotFoundComponent"。我认为是 "exact" 把一切都搞砸了。
您的第二个 Route
仅在路径 完全 /
时才匹配。当 /
只是路径的一部分时,删除 exact
属性以使其处于活动状态。
<React.Fragment>
<Switch>
<Route path="/members" component={MemberAreaComponent} />
<Route path="/" component={NonMemberAreaComponent} />
<Route component={NotFoundComponent} />
</Switch>
</React.Fragment>
我知道有人问过几次这个问题,但似乎没有一个真正适用于我。
我有这个
App.js
<React.Fragment>
<Switch>
<Route path="/members" component={MemberAreaComponent} />
<Route exact path="/" component={NonMemberAreaComponent} />
<Route component={NotFoundComponent} />
</Switch>
</React.Fragment >
在会员区组件我有
// other html above here
<div className="main-area">
<main>
<Switch>
<Route path="/members/home" component={HomeComponent} />
</Switch>
</main>
</div>
NonMemberAreaComponent
<div className="non-members-area-container">
<Route path="/login" component={LoginComponent} />
<Route path="/" component={NonMemberHomeComponent} />
</div>
当我尝试执行 /Login 时,我一直收到 "NotFoundComponent"。我认为是 "exact" 把一切都搞砸了。
您的第二个 Route
仅在路径 完全 /
时才匹配。当 /
只是路径的一部分时,删除 exact
属性以使其处于活动状态。
<React.Fragment>
<Switch>
<Route path="/members" component={MemberAreaComponent} />
<Route path="/" component={NonMemberAreaComponent} />
<Route component={NotFoundComponent} />
</Switch>
</React.Fragment>