我需要通过组件属性为[queryParams]
设置routerLink
,即
@Component({
...
template: '<a [routerLink]="..." [queryParams]="queryParams | async">...</a>
...
})
export class MyComponent {
...
queryParams: any;
...
constructor(route: ActivatedRoute) {
this.queryParams = route.queryParams;
...
}
}
但是这种方法不起作用,路由中没有附加查询参数。我错过了什么?
答案 0 :(得分:-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"];
}
希望这会对你有所帮助。