Angular2 - 将routerLink参数添加到选定的表值

时间:2017-02-27 20:27:40

标签: angular html-table angular2-routing routerlink

我有一个routerLink附加到我在angular2组件的HTML中创建的表中的前导值。单击该表值后,我希望routerLink不仅可以发送到下一个组件,还可以将所选值带到下一个组件。

当前代码示例

<a [routerLink]="['/Records']" ><td> {{Member.Name}} <td></a>

我有链接,所以它发送到记录页面,但是如何将名称发送到该组件,以便我可以显示我想要显示的特定记录?

3 个答案:

答案 0 :(得分:7)

将路线参数添加到url,然后使用ActivatedRoute访问该值。

路线定义
{ path: "Records/:name", component: RecordsComponent }
链接
<a [routerLink]="['/Records', Member.Name]" ><td> {{Member.Name}} <td></a>
获得价值
@Component({
    ...
})
export class RecordsComponent implements OnInit {

    constructor(private _route: ActivatedRoute) { }

    ngOnInit(){
        this._route.params.subscribe((params) => {
        var recordName = params["name"];
        //load record data
   });
}

答案 1 :(得分:4)

像这样定义你的路线:

{ path: 'Records/:id', component: xxx }

声明:

<a [routerLink]="['/Records', Member.name]">{{ Member.name }}</a>

编程:

goToMemberDetails(name) {
   this.router.navigate(['/Records', name]);
 }

答案 2 :(得分:0)

@Component({
    ...
})
export class RecordsComponent implements OnInit {

    constructor(private _route: ActivatedRoute) { }

    ngOnInit(){
        this._route.params.subscribe((params) => {
        var recordName = params["name"];
        //load record data
   });
}