【发布时间】:2020-08-25 16:19:07
【问题描述】:
我的 Angular 代码
getStatus(transferDTO){
this.queryResourceService.getInventoryStatusIdByStatusNameAndStatusTypeUsingGET(transferDTO).subscribe(
this.save()
);
/*
Remaining code here
*/
this.save()
}
function save() {
}
现在我不想调用 this.save() 两次,我希望仅在执行回调以及执行方法中的剩余代码之后才调用它... 当然,我可以通过以下方式解决这个问题
getStatus(transferDTO){
/*
Remaining code here
*/
this.queryResourceService.getInventoryStatusIdByStatusNameAndStatusTypeUsingGET(transferDTO).subscribe(this.save());
}
save(){
}
但我不想延迟回调方法。那么我该如何解决这个问题呢?
【问题讨论】:
-
正确格式化代码,是否要在subscribe方法完成响应时调用this.save()函数?
-
@PrashantPimpale 是的,其余代码也应在调用保存功能时完成
-
你可以将你依赖的代码包装在里面,如果你有需要的数据就会运行它的块
-
你能把剩下的代码包装在你的promise的subscribe方法中,并从同一个块中调用save()方法吗?
-
@ShrutikaPatil 当然可以,但我会再次不必要地等待回调被调用以执行一些独立的代码
标签: angular typescript observable