gpt4 book ai didi

javascript - 如何基于路由在组件内部渲染组件

转载 作者:行者123 更新时间:2023-12-04 10:15:13 24 4
gpt4 key购买 nike

我有这样的路线:

<Provider store={store}>
<BrowserRouter>
<Route path="/" component={App} />
<Route path="/customers" component={Customers} />
<Route path="/tickets" component={Tickets} />
</BrowserRouter>
</Provider>

当路由为 /customers我要 Customers组件 App成分。当路由为 /tickets我要 Tickets App而不是 Customers .我可以检查路线使用
this.props.location.pathname == '/customers'但这就是路由器的用途,对吗?我不应该检查路线和渲染。

根据我上面的路线,我看到 Customers组件 下面 App而不是里面。
App由标题和东西组成。我不想为我的所有组件添加 header 代码。

应用程序.js:
     <Header style={{ height: '39px', lineHeight: '39px' }}>
<Link to="/home">
<div className="logo" style={{ float: 'left' }}>
<img src="" />
<h2>Appnam</h2>
</div>

</Link>
{navEl}
</Header>
<Content >
// Customer or Tickets component here based on route
</Content>

如何渲染内部组件 App根据路线。

最佳答案

假设你有 App 作为主要组件,并且你想要 App 组件中的 Tickets 和 Customers 组件,你可以使用嵌套路由

<Provider store={store}>
<BrowserRouter>
<Route path="/" component={App} />
</BrowserRouter>
</Provider>

内部应用组件
class App extends React.Component {
render() {
return (
<div>
{/* rest of App code */}
<Route path="/customers" component={Customers} />
<Route path="/tickets" component={Tickets} />
</div>
)
}
}

关于javascript - 如何基于路由在组件内部渲染组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61094353/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com