你可以使用 React Router 来实现!:)
但我建议您检查一下配置路线的“普通路线”方式:
https://github.com/ReactTraining/react-router/blob/v2.8.1/docs/guides/RouteConfiguration.md#configuration-with-plain-routes
使用它,您将开始使用一个routes
对象,并且您可以只是require
另一个路线并根据这些组合创建您的路线。像这样的东西:
const routes = {
path: '/',
component: App,
childRoutes: [
require('./profile'),
require('./explore')
]
}
然后在你的profile.js
(你可以对explore.js
)文件中,你会得到类似的东西:
/* Import the ProfileDashboard and ProfileRepos here */
const profileRoutes = {
path: 'profile',
childRoutes: [{
path: 'dashboard',
component: ProfileDashboard
}, {
path: 'repos',
component: ProfileRepos
}]
};
这样你就可以实现你想要的。
如果你真的不能使用普通路线,你可以这样做:
<Route path="/" component={App}>
{ require('./profile') }
{ require('./explore') }
</Route>
而你的profile.js
,例如:
module.exports = (
<Route path="profile">
<Route path="dashboard" component={ProfileDashboard} />
<Route path="dashboard" component={ProfileRepos} />
</Route>
);
我不知道您使用的是什么 React Router 版本,但您可以在任何版本中实现这一点,但作为建议,请尝试使用最新版本。因为它处理了很多很酷的东西。
希望能帮助到你!