我正在使用RC.1在angular2 CLI中进行路由,但似乎在发布之后路由有很多变化 angular2 RC,在angular2 beta之前,一切正常,
../
使用路由器将查看当前组件的父角度抛出错误
Invalid number of '../'
如何在RC中使用子路由?
任何想法?
答案 0 :(得分:2)
搜索后解决它可能会帮助其他人,发布作为答案 -
错误解决方案
Invalid number of '../'
您需要导入RouteSegment并将其添加到构造函数
import { Router, RouteSegment } from '@angular/router';
...
contructor(private $_router:Router, private $_segment:RouteSegment){}
...
//If you are in for example child1 and child 1 is sibling of child2
this.$_router.navigate(['../child2'],this.$_segment);
angular2 RC中的子路由
在angular2 beta中没有任何/...
类似指定子路线,您只需声明路由就不需要使用此/...
Routerparams在angular2 RC.1中不起作用
现在RouteParams
已更改为RouteSegment
,因此您必须将RouteSegment
插入构造函数中并获取此类参数 -
constructor(params: RouteSegment) {
let id = params.getParam("params_name");
}
答案 1 :(得分:1)
回答RouteParams:
你必须为路线添加参数:
@Routes([
{path: '/my-component/:id', component: MyComponent}
])
在RouterLink中使用参数,逗号不是对象:
[routerLink]="['/my-component',id]"
并访问组件中参数的值:
constructor(curr: RouteSegment) {
let itemID = curr.getParam("page_id");
}