使用 Await 进行异步回调处理
在某些情况下,在使用如下回调时:
test() { api.on( 'someEvent', function( response ) { return response; }); }
您可能需要合并异步性。要使这个函数异步并使用await,首先必须确保回调函数(someEvent)返回一个Promise。这是因为异步函数依赖 Promises 来完成异步操作。
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 }
以上是如何使用Await处理异步回调?的详细内容。更多信息请关注PHP中文网其他相关文章!