단순한 약속 체인 내에서 중간 약속 결과를 검색하려면 체인을 별도의 체인으로 분리해야 합니다. 세그먼트.
의 매개변수에 의존하는 대신 단일 콜백을 사용하여 중간 값을 얻으려면 약속 연결자를 활용하여 원하는 복합 값을 생성하는 것이 좋습니다. 이 접근 방식은 명확하고 구조화된 제어 흐름을 보장하여 모듈화를 간단하게 만듭니다.
다음 예를 고려하세요.
function getExample() { var a = promiseA(…); var b = a.then(function(resultA) { // some processing return promiseB(…); }); return Promise.all([a, b]).then(function([resultA, resultB]) { // more processing return // something using both resultA and resultB }); }
이 예에서는 Promise 결합자 Promise입니다. all은 a와 b의 결과를 집계하는 데 사용됩니다. 그런 다음 Promise.all을 따르는 콜백은 resultA와 resultB 모두에 액세스하고 활용하여 복합 값을 생성할 수 있습니다.
Q, Bluebird와 같은 라이브러리 및 . 여러 약속 결과의 처리를 단순화하기 위해 확산 ES5.
… return Promise.all([a, b]).then(function(results) { results.spread(function(resultA, resultB) { … }); });
Bluebird는 Promise.all 및 .spread 조합에 대한 보다 효율적인 대안으로 전용 Promise.join 기능을 제공합니다.
… return Promise.join(a, b, function(resultA, resultB) { … });
위 내용은 단순 약속 체인에서 중간 약속 결과에 어떻게 액세스할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!