Angular 角度:路由器因查询参数而重新加载
我有指向相同组件但参数不同的路由器链接Angular 角度:路由器因查询参数而重新加载,angular,Angular,我有指向相同组件但参数不同的路由器链接 <a [routerLink]="['/goto']" [queryParams]="{mode: '1'}">Goto1</a> <a [routerLink]="['/goto']" [queryParams]="{mode: '2'}">Goto2</a> 但由于路由器仅在URL更改时才执行操作,因此组件不会重新加载 仅使用一个带参数的组件时,如何以最佳方式处理此问题 谢谢 尝试订阅queryPara
<a [routerLink]="['/goto']" [queryParams]="{mode: '1'}">Goto1</a>
<a [routerLink]="['/goto']" [queryParams]="{mode: '2'}">Goto2</a>
但由于路由器仅在URL更改时才执行操作,因此组件不会重新加载
仅使用一个带参数的组件时,如何以最佳方式处理此问题
谢谢 尝试订阅queryParams
this.rt.queryParams.subscribe((queryparams) => {
this.mode= queryparam['mode'];
});
尝试订阅queryParams
this.rt.queryParams.subscribe((queryparams) => {
this.mode= queryparam['mode'];
});
Angular router确实会重用您的组件,因为url(RouterConfig)是相同的(您可以通过订阅activatedRoute.queryParams来更改行为),以获取参数
constructor(private activatedRoute: ActivatedRoute) {}
ngOnInit() {
// subscribe to router event
this.subscription = this.activatedRoute.queryParams.subscribe((params: Params) => {
let userId = params['mode'];
console.log(mode);
});
}
Angular router确实会重用您的组件,因为url(RouterConfig)是相同的(您可以通过订阅activatedRoute.queryParams来更改行为),以获取参数
constructor(private activatedRoute: ActivatedRoute) {}
ngOnInit() {
// subscribe to router event
this.subscription = this.activatedRoute.queryParams.subscribe((params: Params) => {
let userId = params['mode'];
console.log(mode);
});
}