我有一个角度工厂和一个控制器,格式如下。我正在调用注册免费课程功能,它更新了firebase数据库。但是在firebase手册中,它表示update()可以返回一个Promise,您可以使用它来知道写入何时提交给数据库。 在我的情况下,有可能不会提交更新,但我想抓住它。我正在尝试使用此代码,但现在正在使用。
.controller(...){
CourseFact.RegisterFreeCourses(...).then(function(value){
...success
}).catch(function (e) {
...fail
});
})
}
.factory('CourseFact'...
{
return {
RegisterFreeCourses:{
updates[.../...] = postDataPlayer;
return firebase.database().ref().update(updates);
}
}
}
我该如何修复它还是有更好的例子吗?
答案 0 :(得分:0)
错误响应已经在承诺链中,因此您不必抓住它。您只需指定成功和错误功能,一旦解决/拒绝承诺,它们就会被调用
.then(successCallback, errorCallback);
function successCallback(response){
//do something
}
function errorCallback(error){
//do something else
}