【发布时间】:2025-11-27 02:25:02
【问题描述】:
我写了一个代码,我想在发生异常时捕获一个错误:
this.assetApiService.getAssets(new AssetSearchCriteriaDto({tags: [AssetTags.tenant]})).pipe(
catchError(error => {
console.log(error);
}),
(mergeMap((assets: AssetDto[]) => {
this.appInitStorageService.setAvailableTenants(assets);
return this.userApiService.getUserById(this.authApiService.getAuth().userInfo.id);
}
)
)
)
.subscribe((user: UserDto) => {
this.persistSelectedUserLanguage(user);
this.appInitStorageService.setUser(user);
resolve();
}, error => {
console.log('error:', error);
});
我们的目标是捕捉错误,如果它们发生在序列中的第一个可观察对象(getAssets)或第二个可观察对象(getUserById)中。我在第一个中添加了 catchError 运算符,但我看不到 console.log(error)。我不知道为什么。在这个例子中我应该如何正确地捕捉错误?
【问题讨论】:
标签: angular rxjs observable mergemap