react-router链路到子路由

时间:2015-06-07 19:35:06

标签: javascript reactjs react-router

如何为子路线创建链接,例如lang - > python?

我的路线

var routes = (
  <Route name="app" path="/" handler={ App }>
    <Route name="info" handler={ Info } />
    <Route name="home" handler={ Home } />
    <Route name="lang" handler={ Lang } >
      <Route path="java" handler={Lang}/>
      <Route path="python" handler={Lang}/>
    </Route>
    <DefaultRoute handler={ Home } />
    <NotFoundRoute handler={ NotFound } />
  </Route>
);

创建info或lang的链接工作正常但我如何链接到java或python?

<Link to="info">Info</Link>

我测试了

<Link to="lang/java">Java</Link>
<Link to="lang java">Java</Link>

但会导致错误:

不变违规:找不到名为&#34; lang / java&#34;

的路线

普通链接有效,但我想知道Link是如何完成的。

<a href="#lang/python">
   <h2>PYTHON</h2>
</a>

解决方案

链接:

<Link to="java">
  JAVA
</Link>

路线:

<Route name="challenge" handler={ Challenge } >

      <Route name="java" path="java" handler={Challenge}/>

但也许某人有一个解决方案而没有添加新名称。

1 个答案:

答案 0 :(得分:0)

您只需添加名称“java”即可链接“java”。

或者更好的方法是在lang route path =“lang /:language”中创建一个参数,然后在处理程序中输出语言