【发布时间】:2021-06-25 17:05:14
【问题描述】:
思路:调用异步customPrompt()wait,点击按钮返回true或false。
目前我可以按应有的方式显示提示,但我被困在事件侦听器上,因为该函数只返回未解决的承诺
async function customPrompt() {
prompt.classList.add('show);
prompt.querySelector('.btnTrue').addEventListener('click', () => {
return true;
})
prompt.querySelector('.btnFalse').addEventListener('click', () => {
return false;
})
}
如何在单击其中一个按钮后立即解决承诺?
PS:我对 async/await 很陌生,但在网上找不到任何关于此类的文章
任何帮助表示赞赏;)
【问题讨论】:
-
Promise 不应该用于可以解决多次的事情,而应该使用事件或回调。
-
我假设真正的代码也会在单击按钮时删除对话框。
-
是的,这只是一个简化的示例,但@ponury-kostek 的解决方案有效并帮助解决了所有问题
标签: javascript asynchronous ecmascript-6 async-await promise