【发布时间】:2020-12-29 20:58:36
【问题描述】:
我在文档中有一个运行功能的按钮,该功能旨在帮助用户在添加到 roblox 的每个用户之间导航。出于某种原因,我的承诺不会等到再次单击按钮,而是在几秒钟内遍历数组中的每个元素。我的代码不多,因为我刚遇到这个错误
HTML
<div class="buttons">
<div class="pass" onclick="manager('pass')">
<img src="../assets/x.png">
</div>
<div class="check" onclick="manager('unfriend')">
<img src="../assets/check.png">
</div>
</div>
功能
async function manager(type) {
let friends = await getUsers();
for(const user of friends) {
let friend = await getUser(user.id)
await (new Promise(((resolve => {
if(type == 'pass') {
username.innerText = friend.name;
profile.src = friend.thumbnail
return resolve()
}
}))))
}
}
【问题讨论】:
-
我看不到任何让它等待点击的东西。我也没有看到任何地方定义的类型。
-
使异步的东西实际上不是异步的没什么意义。整个内部的承诺可以/应该被删除。承诺进行副作用更改而不是返回值也非常令人费解。
-
如果你需要用户交互,循环是没有意义的......
标签: javascript node.js for-loop