0

我正在尝试使用 ActivatedRoute 获取 routerLink 参数。

constructor(private route: ActivatedRoute) { }

ngOnInit() {
  this.pageTitle = this.route.snapshot.params['title'];
}

它仅第一次显示参数。但在更改参数时不会再次出现。

链接到StackBlitz示例。

当我单击Search Page a它显示标题是test。但是,当我单击Search Page b时,即使标题正在测试,它仍然会继续显示 title is test。但是,当我单击Home然后Search Page b它显示更新的参数为testing

如何解决此问题,以便在搜索页面 a 之后单击搜索页面b时,它会显示更新的参数。

4

1 回答 1

2

你拥有它的方式,它只工作一次,而且只工作一次。它不适用于您的标准。如果您想做出反应,则必须以可观察的方式进行。

尝试:

this.route.params.subscribe(params => {
        this.pageTitle = params['title'];
      });

每次参数更改时,您都会收到通知,订阅将启动并更改pageTitle.

于 2020-04-28T16:04:23.643 回答