我正在执行右舷命令,问题出在这里。星数设置为3,但当我只反应1次时,它仍然会将其放入右舷
这是代码
if (user.partial) await user.fetch();
if (reaction.partial) await reaction.fetch();
if (reaction.message.partial) await reaction.message.fetch();
if (reaction.emoji.name === "⭐"){
if (reaction.count == starboardnum || 3){
// rest of code
}
图片链接:
https://i.stack.imgur.com/wUeoK.png
错误很可能与==在||之前求值有关,这意味着如果reaction.count
不等于starboardnum
,它将在if语句中使用3
,这在Javascript中是一个truthy值。
修复很简单,只需在starboardnum || 3
周围放上括号,如下所示:
if (reaction.count == (starboardnum || 3)){