无法接收在 Angular 路由中发送的查询参数
Cannot receive queryparameters sent in Angular routing
我有一个组件路由到另一个传递一些条件参数的组件
这是定义路由的代码:
redirect(topicname : string){
alert(topicname)
this.router.navigate(['/chapters'], { queryParams: { topic: topicname } });
}
并且在 Chapters.component.ts 文件中我定义了:
export class ChapterstemplComponent implements OnInit {
topic : string;
constructor( private route : ActivatedRoute) {
this.topic= this.route.snapshot.params.topic;
alert( this.route.snapshot)
}
但是 this.topic 没有收到任何值。我想在 chapters.component 的 HTML 文件中使用它。
注意:警报消息确认 'topicname' 在第一个片段中发送良好
但是在第二个片段中,路由没有收到任何参数
这是相同的图片:
第一个/发送警报:
第二次/收到警报:
我们可以借助paramMap
获取查询参数
尝试做如下的操作,这将获取订阅 ActivatedRoute.[= 的 queryParams 中的参数。 14=]
ngOnInit() {
this.route.queryParams.subscribe(params => {
this.topic = params['topic'];
});
}
您还可以在此处详细了解路由:
快乐编码..:)
我有一个组件路由到另一个传递一些条件参数的组件
这是定义路由的代码:
redirect(topicname : string){
alert(topicname)
this.router.navigate(['/chapters'], { queryParams: { topic: topicname } });
}
并且在 Chapters.component.ts 文件中我定义了:
export class ChapterstemplComponent implements OnInit {
topic : string;
constructor( private route : ActivatedRoute) {
this.topic= this.route.snapshot.params.topic;
alert( this.route.snapshot)
}
但是 this.topic 没有收到任何值。我想在 chapters.component 的 HTML 文件中使用它。 注意:警报消息确认 'topicname' 在第一个片段中发送良好 但是在第二个片段中,路由没有收到任何参数 这是相同的图片:
第一个/发送警报:
第二次/收到警报:
我们可以借助paramMap
获取查询参数尝试做如下的操作,这将获取订阅 ActivatedRoute.[= 的 queryParams 中的参数。 14=]
ngOnInit() {
this.route.queryParams.subscribe(params => {
this.topic = params['topic'];
});
}
您还可以在此处详细了解路由:
快乐编码..:)