참고 : AngularJS와 관련된 중복 질문이 How to always run some code when a promise is fulfilled in Angular.js이 아닙니다.자바 스크립트 : 약속이 이행되면 동일한 함수를 호출하십시오.
저는 jQuery의 done이나 AngularJS의 finally과 같은 것을 찾고 있습니다.
나는 해결되거나 거절되는 약속을 가지고 있습니다. 그것이 해결되었거나 거절 되든, 다음과 같이 같은 기능을 수행하고 싶습니다 :
var myPromise = new Promise(function(resolve, reject) {
resolve('Success!');
if(something) {
resolve('ok');
} else {
reject('not ok');
}
});
myPromise.then(function(data) {
var x = 1;
var y = 2;
console.log(data);
}, function(data) {
var x = 1;
var y = 2;
console.log(data);
});
위의 코드가 작동합니다. 문제는 동일한 함수를 두 번 복사하는 것입니다. 나는이 같은 명명 된 기능을 가질 수 알고
var myPromise = new Promise(function(resolve, reject) { ... });
myPromise.then(doWork, doWork);
function doWork(data) {
var x = 1;
var y = 2;
console.log(data);
}
을하지만 방법에 거기 있는지 궁금 해요 :
- 대신
myPromise.then(doWork, doWork);
의, 한 번 함수를 작성하고 .. - 을 명명 된 함수 대신 익명의 함수를 사용하십시오. 그리고 ..
훌륭한 세부 정보! <3 – evilReiko