나는 약속을하고, aprimeise는 서버를 호출하며, 약속 안함, 비동기 적으로 호출되는 notAPromise를 호출합니다. 결과. 나는이 아니라는 바로 Promise.all에 동기 notAPromise을 넣을 수 있나요Promise.all에서 약속과 비 약속 약속하기
Promise.all([aPromise(), Promise.method(notAPromise)()])
.spread(function(result1, result2) {
//do something with results
})
.catch(function(error) {
//do something with error
});
을 할 수있는 가장 좋은 방법입니다 또는 외부해야 확실 있나요?
이 방법의 장점은 aPromise가 서버에서 돌아가는 데 시간이 걸리는 경우입니다. 아크로니스는 다시 돌아올 때까지 완료 할 수 없습니다. 또는 다른 방법으로는 서버를 호출하기 전에 notapromise가 동기화 될 때까지 기다릴 필요가 없습니다.
이 코드를 작성하는 더 좋은 방법이 있습니까?
EDIT : 또한 결과를 반환하는 대신 notPromise가 일부 상태를 변경하는 경우 aPromise가 성공적으로 반환 한 경우에만 새 상태를 원합니다. aPromise가 던지기는하지만 아크로뱃이 완료되지 않으면 우리는 새로운 상태가 될 것입니다.
Promise는 비동기식으로 실행할 수 있으므로 promise.all 내부에 약속하지 않은 함수를 삽입 할 필요가 없습니다. –