오류 : h1.js:25 Warning: a promise was rejected with a non-error: [object String]
약속이 아닌 오류 경고 거부
완전히 확실하지 왜 오류를 이해하는 데 도움이 사랑하고 그 원인을 무엇인지. 아직도 약속과 AJAX를 배우는 것은 매우 감사합니다!
var logisticsModule = (function() {
return {
initialize: function() {
dateTimeFxns.getReservedDates.then(
// success
function(reserved_dates) {
console.log("success with value = " + reserved_dates)
},
function(error) {
console.log("error with value = " + error)
}
)
}
}
})();
var dateTimeFxns = {
getReservedDates: new Promise(function(resolve, reject) {
$.ajax({
// some url & data
})
.done(function(result) {
resolve(result)
}
.fail(function(error) {
reject(error)
}
})
}
$(document).ready(function() {
logisticsModule.initialize();
})
UPDATE 경고 메시지 (I이 쓰기 예를 들어, 나는 또한이 약속은 아약스 객체를 포장하도록 약간 중복 생각하지만, 솔직히 그렇지 않으면 다시 작성하는 방법을 모른다)
.fail(function(jqXHR, textStatus, errorThrown) {
reject(new Error(errorThrown))
})
CONSOLE.LOG (에러)을 수행; 오류가 유형 오류 객체 – linasmnew
이 아님을 말합니다. 문자열을 얻지 만'Error' 객체를 만드는 것이 가장 좋습니다. 그래서 당신의 reject 함수에서'reject (새로운 에러 (에러))'를하십시오. 이는 실제로 오류가 무엇인지에 대한 추가 문제입니다. 장점 : Stack 추적은 'Error' 개체에서 사용할 수 있습니다. –
고마워.하지만 웬일인지 내 문제가 해결되지 않았다. 업데이트를 참조하십시오. – james