javascript - DefaultRouter 组件中的嵌套路由

标签 javascript reactjs react-router

我正在玩我的网络应用程序,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,此示例不起作用。当我将其更改为正常的 Route 组件时,一切正常。我找不到 DefaultRoute 有一些子项的示例。 DefaultRoute 可以嵌套路由吗?如果是的话我做错了什么?

最佳答案

我遇到了同样的问题,我最终使用而不是。

我快速查看了 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 不支持嵌套路由。

希望这有帮助。

关于javascript - DefaultRouter 组件中的嵌套路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28727278/

相关文章:

javascript - 在 Javascript 中迭代 JSON 响应

javascript - 作为本练习的解决方案,这两个循环之间的主要区别是什么? (学习javascript)

javascript - ReactJS 组件中显示的视频未更新

javascript - 使用react-router和react-router-redux。当我转到 localhost :9000/it works fine, 但不是 localhost:9000/login 时

javascript - Material-ui 从 react-router 添加 Link 组件

javascript - 每次迭代创建唯一的 id,然后指定单击时的行为

用于连接 URL 的 Javascript 语法

Javascript JSON.stringify 返回 []

testing - ReactTestUtils.Simulate 无法通过addEventListener 触发事件绑定(bind)?

javascript - 使用 React-router 在 Redux 中间件中获取 url 参数