0

我需要通过组件属性设置[queryParams]for a routerLink,即

@Component({
   ...
   template: '<a [routerLink]="..." [queryParams]="queryParams | async">...</a>
   ...
})
export class MyComponent {
   ...
   queryParams: any;
   ...
   constructor(route: ActivatedRoute) {
      this.queryParams = route.queryParams;
      ...
   }
}

但是这种方法不起作用,路由没有附加查询参数。我错过了什么?

4

1 回答 1

-1

您可以使用此正确语法附加查询参数

  this.router.navigate([yourRouteName], {queryParams:{ida:1,Idb:2,Idc:3}});

或者

<a [routeLink]="yourRouteName, {queryParams:{ida:1,Idb:2,Idc:3}}"

然后您可以使用以下语法接收查询参数

import { Router, Route, ActivatedRoute } from '@angular/router';    
ngOnint{
        this.IDA= this.router.routerState.snapshot.root.queryParams["Ida"];
        this.IDB= this.router.routerState.snapshot.root.queryParams["Idb"];
        this.IDC= this.router.routerState.snapshot.root.queryParams["Idc"];
    }

希望这会帮助你。

于 2016-10-02T18:58:18.813 回答