Rozumiem, że zazwyczaj wystarczy dołączyć kod kontynuacji z zachowaniem połączenia i łańcucha o wartości then()
podczas korzystania z obietnic.
Jednak chcę uruchomić asynchroniczne wywołanie z obietnicą, a następnie osobno rozpocząć 3-sekundową $timeout()
, więc mogę wykonać akcję interfejsu użytkownika, TYLKO JEŚLI oryginalna obietnica jeszcze się nie zakończyła. (Przewiduję, że będzie to miało miejsce tylko w przypadku powolnych połączeń, urządzeń mobilnych w sieci 3G itd.).
Czy mogę spełnić obietnicę, czy jest ona kompletna, czy nie, bez blokowania lub oczekiwania?
Otworzyłem problem w tym kanciastym i dostałem pomocną odpowiedź https://github.com/angular/angular.js/issues/8307#issuecomment-49903373 – derekdreery
możliwy duplikat http://stackoverflow.com/questions/27039771/q-js-is-it-possible-to-know-if-a-promise-has-resolved-rejected-or-not – mvermand