Await를 사용한 비동기 콜백 처리
특정 시나리오에서는 다음과 같은 콜백을 사용하는 동안:
test() { api.on( 'someEvent', function( response ) { return response; }); }
비동기성을 통합해야 할 수도 있습니다. 이 함수를 비동기식으로 만들고 대기를 사용하려면 먼저 콜백 함수(someEvent)가 Promise를 반환하는지 확인해야 합니다. 이는 비동기 함수가 비동기 작업을 완료하기 위해 Promise에 의존하기 때문입니다.
api.on()의 수정된 버전:
function apiOn(event) { return new Promise(resolve => { api.on(event, response => resolve(response)); }); }
이 업데이트된 함수를 사용하면 이제 test()를 비동기 함수로 수정할 수 있습니다.
async function test() { return await apiOn( 'someEvent' ); }
그러나 비동기 함수도 Promise를 반환하므로 test()의 실제 결과 값은 다른 비동기 함수 내에서 해결될 수 있는 Promise입니다.
async function whatever() { // snip const response = await test(); // use response here // snip }
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3