我正在尝试使用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;
请帮忙。这是语法错误吗?
答案 0 :(得分:0)
这可能会对您有所帮助https://github.com/rackt/react-router/issues/1285#issuecomment-111908695
迈克尔说你需要:
为了在0.13.x API中插入参数,你的路径需要有一个段来供该参数占用。