기능을 기다리고 있습니다 -> 약속 -> 비동기/await를 -> 비동기/await를 -> 비동기/await를잡기 오류는/내가 같이 보입니다 콜백 <code>node 4.3</code> 스크립트 함수 체인을
같은 :
const topLevel = (resolve, reject) => {
const foo = doThing(data)
.then(results => {
resolve(results)
})
.catch(err => {
reject(err)
})
}
async function doThing(data) {
const thing = await doAnotherThing(data)
return thing
}
async function doAnotherThing(data) {
const thingDone = await etcFunction(data)
return thingDone
}
이 etcFunction()
가 발생하는 경우 (이 모든 방법을 통해 async/await
없는 이유는 최고 수준의 함수는 태스크 큐 라이브러리이며, 표면 상 async/await
스타일 실행할 수 없다는 것입니다) 01 않습니다.거품이 최상위 수준까지 올라갑니다 Promise
?
그렇지 않은 경우 어떻게 거품을 쓸 수 있습니까? errors
? 각 await
을 try/catch
및 throw
에 포장해야합니까? etcFunction()
가 발생하는 경우
async function doAnotherThing(data) {
try {
await etcFunction(data)
} catch(err) {
throw err
}
}
'makePromise' 란 무엇입니까? – Bergi
"최상위 함수는 작업 대기열 라이브러리이며 표면적으로 async/await 스타일을 실행할 수 없습니다 *"- 대기열 라이브러리가 작업과 같이 비동기 함수를 사용할 수없는 이유는 없습니다. 콜백을 다루지 않아도됩니다. 콜백 스타일을 사용하는 특정 큐 라이브러리를 사용해야하는 경우에는 래퍼 (wrapper) 함수를 사용하십시오. – Bergi
@Bergi'makePromise'는 실제로'async' 함수입니다.하지만'async'가 아닌 환경에서 호출 되었기 때문에 저는 그것을 약속처럼 다루고 있습니다. 다시 : 나는 동의 할 것이고, 나는 약속 할 것이다 .- 결국 그것은 가능할 것이다. 그러나 나는 믿을 수없는 오류가 평균 시간 안에 버블 링 될 수 있는가? – Brandon