【发布时间】:2019-06-27 14:21:33
【问题描述】:
我有两个函数可以返回对 AngularJS 的 $http.post 的调用。 这两个函数是 savePart1() & savePart2()
savePart1 = (): IPromise<any> => {
return $http.post(....)
}
savePart2 = (): IPromise<any> => {
return $http.post(....)
}
如果 savePart1() 失败,我试图不调用Part2()。 我做了这样的事情:
this.savePart1().then((response1) => {
if (response1.status !== 200)
// don't call savePart2()
this.savePart2().then((response2) => {
if(response1.status === 200)
//display success message when both calls succeed
}):
}), (error) => {
//handle error;
}).finally();
我的问题是,如果 savePart2() 的响应未返回 200 状态(不一定是错误),如何取消调用 savePart2()。 IPromise 似乎没有拒绝方法。我只是从第一个承诺中返回吗?
我的目标是在两个调用都成功时显示成功消息。我的语法是最好的方法吗?当任何调用失败时,我想添加一个错误处理程序。
【问题讨论】:
-
"如果 savePart1() 没有返回 200 的状态,我试图不调用Part2()" - 这正是您正在做的,
if没有错陈述。还是我误解了您要查找的内容?
标签: angularjs typescript promise angular-promise