反应路由器TransitionTo缺少参数

时间:2015-06-28 14:56:52

标签: javascript reactjs react-router

我正在尝试使用React-router以编程方式重定向。但是,我遇到了一个问题。

路由

<Route handler={Home} path="/">
    <Route handler={Handler2} name="route-2" path="/route2" />
    <Route handler={Handler3} name="route-3" path="/route3/:param1" >

        <Route handler={Handler4} name="route-4" path="subroute/:param2" />
    </Route>
 </Route>

组件深层次的组件,处理程序的子项

...
    contextTypes: {
        router: React.PropTypes.func
    },
    handleClick : function(e){
        this.context.router.transitionTo('route-4',{param1:1,param2:2});

    },
   ...

我可以调用transitionTo函数和正确的路径,但是我收到错误说,

  

不变违规:遗失&#34; param1&#34;路径参数   &#34; /路径3 /:参数1 / subroute /:参数2&#34;

请帮忙。这是语法错误吗?

1 个答案:

答案 0 :(得分:0)

这可能会对您有所帮助https://github.com/rackt/react-router/issues/1285#issuecomment-111908695

迈克尔说你需要:

  

为了在0.13.x API中插入参数,你的路径需要有一个段来供该参数占用。