【问题标题】:React-router: How to pass `components` prop to ancestor? [duplicate]React-router:如何将“组件”道具传递给祖先? [复制]
【发布时间】:2017-03-07 16:36:53
【问题描述】:

目前,我的结构类似于

<Route path="/" component={App}>
  <Route path="page1" components={{content: C1, aside: A1}} />
  <Route path="page2" components={{content: C2, aside: A2}} />

  <Route path="page3" components={{content: C3, aside: A3}} >
    <Route path="page3-sub" components={{content: C3Sub, aside: A3Sub}} />
  </Route>

</Route>

使用此路由配置page3-sub 的组件无法到达App:它们正在被page3 的“覆盖”。有什么办法可以保持这种路由结构使用page3-sub的组件?

【问题讨论】:

    标签: reactjs react-router


    【解决方案1】:

    我无法对此进行测试,但我相信您只需要取消嵌套即可:

    <Route path="/" component={App}>
      <Route path="page1" components={{content: C1, aside: A1}} />
      <Route path="page2" components={{content: C2, aside: A2}} />
      <Route path="page3" components={{content: C3, aside: A3}} />
      <Route path="page3-sub" components={{content: C3Sub, aside: A3Sub}}/>
    </Route>
    

    【讨论】:

    • 嗨 Anthony,正如问题中所述,我需要那种特殊的路由结构,但是谢谢!
    • 这也是可行的。我确定我记得有人在 react-routers github 帮助频道中遇到了确切的问题,他们使用这种方法解决了这个问题。像这样相应地更新您的路径: 对不起,如果我在这方面误导了您,正如我所说,我无法测试。
    • 谢谢!研究主题时没有找到该帖子!
    • 这是否为您解决了问题? (如果确实如此,我可以求你支持/接受答案吗?)
    猜你喜欢
    • 2018-04-25
    • 2015-09-21
    • 2018-12-14
    • 2018-07-17
    • 2019-05-08
    • 2015-03-08
    • 2021-12-21
    • 2016-03-19
    • 2018-08-25
    相关资源
    最近更新 更多