【发布时间】:2021-05-07 03:18:05
【问题描述】:
我想知道如何从 subscribe 方法中取出值并将其设置为全局变量。所以我可以在我的打字稿文件的任何地方使用它
constructor(
private VNFCInstanceServicesService: VNFCInstanceServicesService,
) {
this.siteId = this.route.snapshot.queryParams.siteId;
this.vnfInsId = this.route.snapshot.queryParams.vnfInstanceId;
this.VNFCInstanceServicesService.filterVnfciServices(
this.vnfInsId,
this.siteId,
0
).subscribe((data) => {
this.source.load(data.payload.records);
});
}
我需要把这个(data.payload.records)作为一个全局变量值
【问题讨论】:
-
您不能同步使用异步数据。任何直接依赖于 observable 数据的语句都必须在订阅中。换句话说,您需要在需要响应的地方订阅。但是,您可以使用
shareReplay运算符或ReplaySubjectmutli-cast observable 来研究缓存机制。
标签: javascript angular typescript rxjs