私はajax呼び出しを行う関数とエラーを処理する関数を持っています。ターゲットは次のとおりです。エラーを後で使用するためのより良いフォーマットに操作します(下記の例を参照)。JS Promises:エラー処理の概念
問題:.then()
の2番目のコールバックは呼び出されません。
コード:
function _handleError(error) {
//bring error info in better usable format
...
return errorRes;
}
function getSth(...) {
...
return $.ajax({
url: baseUrl + query,
type: "GET",
headers: {
...
}
}).then(function (data) {
var results = data.d.results;
... //Do mapping stuff
return results;
}, _handleError);
}
私はそれを実装したいと思います方法:
getSth(...).then(function(results){
...
}, function(err){
console.log(err);
... //Do more with error info
});
.then()
に与えられた第二の機能は_handleError()
ががある、と呼ばれることは決してありません。私はPromiseのコンセプトに関する何かを誤解していると確信しています。