javascript - 自定义JS提示功能
问题描述
这个想法:调用异步customPrompt()
等待,返回按钮点击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
在您的customPrompt
函数内部创建,并resolve
在单击按钮时创建
function customPrompt() {
return new Promise((resolve) => {
prompt.classList.add('show');
prompt.querySelector('.btnTrue').addEventListener('click', () => {
prompt.classList.remove('show');
resolve(true);
})
prompt.querySelector('.btnFalse').addEventListener('click', () => {
prompt.classList.remove('show');
resolve(false);
})
})
}
}
推荐阅读
- python - 动态数据网页抓取硒
- c# - 如何设置一个等于栈顶的变量?C#
- java - 删除其事务记录的客户端请求的 HTTP 状态代码
- ios - 在 iOS 13 中关闭 UIScrollView 指示器清理
- php - 使用 Laravel 验证数组时 NGINX 网关错误
- node.js - 使用 nodejs 从产品的多个图像中显示图像
- javascript - 如何在 Firebase 云函数中重用代码
- spring - Spring Boot API 部署成功,但在到达端点时返回 404
- r - 将日期从 yyyy-mm-dd 转换为 dd 月 yyyy
- batch-file - 如何将环境变量的值写入文本文件?