我正在玩我的网络应用和react-router包,我想做一些嵌套路线。这就是我所做的
<Route name="app" path="/" handler={App}>
<DefaultRoute handler={AppPage}>
<DefaultRoute name="home" handler={HomePage}/>
<Route name="rooms" handler={RoomsPage}/>
</DefaultRoute>
<Route name="login" handler={LoginPage}/>
<Route name="firstime" handler={FirstTimePage}/>
</Route>
由于DefaultRoute,此示例无效。当我将其更改为普通路由组件时,一切正常。我找不到DefaultRoute有一些孩子的例子。 DefaultRoute可以有嵌套的路由吗?如果是,那么我做错了什么?
答案 0 :(得分:1)
我遇到了同样的问题,最后用的是代替。
我快速浏览了一下DefaultRoute组件,似乎不支持子路由,这里是代码:
/**
* A <DefaultRoute> component is a special kind of <Route> that
* renders when its parent matches but none of its siblings do.
* Only one such route may be used at any given level in the
* route hierarchy.
*/
var DefaultRoute = React.createClass({
displayName: 'DefaultRoute',
mixins: [ Configuration ],
propTypes: {
name: PropTypes.string,
path: PropTypes.falsy,
children: PropTypes.falsy,
handler: PropTypes.func.isRequired
}
});
module.exports = DefaultRoute;
我不是100%肯定,但'children:PropTypes.falsy'可能意味着DefaultRoute不支持嵌套路由。
希望这有帮助。