【发布时间】:2019-09-04 13:24:47
【问题描述】:
我正在尝试显示两个不同的导航栏组件,一个作为主站点导航栏,一个作为仪表板导航栏。
我尝试过创建两个可重用的组件,即:
<LayoutNav /> 和 <DashboardNav />
这是他们的实现:
const LayoutNav = ({children}) => {
return (
<>
<section className="container-fluid">
<Navbar />
{children}
</section>
</>
);
}
LayoutDashboardNav 也一样,我只是将<Navbar /> 更改为<DashboardNav /> 下面是我的路由实现:
<BrowserRouter>
<Switch>
<LayoutNav>
<Route exact path="/registervehicle" component={RegVehicle} />
<Route exact path="/result" component={SearchResults} />
<Route exact path="/selectseat" component={PickSeat} />
<Route exact path="/forgotpassword" component={ForgotPassword} />
<Route exact path="/resetpassword" component={ResetPassword} />
<Route exact path="/register" component={Registration} />
<Route exact path="/login" component={LoginAuth} />
<Route exact path="/" component={Home} />
</LayoutNav>
<LayoutDashboardNav>
<Route exact path="/companydashboard" component={CompanyDashboard} />
</LayoutDashboardNav>
<Route component={NotFound} />
</Switch>
<Footer />
</BrowserRouter>
我希望看到<Navbar /> 或<DashboardNav /> 仅在它们所用组件的子页面上。但所有内容都只显示<Navbar />。
【问题讨论】:
标签: reactjs react-router react-router-component