处理角度.js承诺错误状态

Handle Angular.js promise error status

本文关键字:错误 状态 承诺 js 处理      更新时间:2023-09-26

我的代码是这样的,

app.controller('myController', function($scope, MyService, ...) {
    MyService.getInfoFromUrl('MyUrl').then(function(result) {
        console.log("Successfully get info from URL ...");
    }, function(error) {
        console.log("Server error ...");
        console.log(error);
    });
});

因此,当我使用错误路径对其进行测试时,我看到服务器错误...定义

请问获取错误信息的正确方法是什么?

我认为您需要处理getInfoFromUrl()中的服务器错误,然后当您的承诺出现错误时,调用-

getInfoFromUrl(){
    return new Promise(function(resolve,reject){
    //some code to get info
    if(noErrors){ 
        resolve(Info);   //This will return value to first callback
    else if(hasErrors){
        reject(error);   //This will throw error
    }
});
}
reject(error)

然后按原样使用Wasiq Muhammad的代码。

MyService.getInfoFromUrl('MyUrl').success(function(result) {
    console.log("Successfully get info from URL ...");
}).catch(function(error){
    console.log("Server error ...");
    console.log(error);
});

希望有帮助。

试试这个

app.controller('myController', function($scope, MyService, ...) {
    MyService.getInfoFromUrl('MyUrl').success(function(result) {
        console.log("Successfully get info from URL ...");
    }).catch(function(error){
        console.log("Server error ...");
        console.log(error);
    });
});