有route.paramMap.subscribe时,是否有任何理由使用route.snapshot.paramMap?

问题描述 投票:0回答:1

我想知道是否有任何使用理由

this.someProperty = this.route.snapshot.paramMap.get('someParam');

代替

this.route.paramMap.subscribe((param) => 
{ 
  this.someProperty = param.get('someParam'); 
});

queryParamMap也是如此。

在本教程中,我关注的是它们似乎默认情况下使用快照,并且仅当您期望参数更改而路由保持不变时才订阅。但是应用程序会随着时间而改变。更改可能会导致参数变化而路径保持不变的情况。很容易忽略这种情况。

因此,使用订阅而不是快照是(或者是最佳做法)?>>

快照方式更短,但是还有其他好处吗?

我可能会在这里征求意见,但我想知道是否有官方的最佳做法。

提前感谢。

我想知道是否有任何理由使用this.someProperty = this.route.snapshot.paramMap.get('someParam');而不是this.route.paramMap.subscribe((param)=> {this.someProperty = param.get('...

angular parameters query-parameters
1个回答
0
投票

使用sanpshop时,您只会获得一次值,就是这样,如果用户更改url中的参数,或者使用导航到具有另一个参数的相同路径,则不会获得新值(除非您正在阅读每次您需要它时]

© www.soinside.com 2019 - 2024. All rights reserved.