if else 对我不起作用
const filter = (reaction, user) => {
return ['?', '?', '?', '?'].includes(reaction.emoji.name) && !user.bot;}
message.awaitReactions(filter, {max: 1, time: 20000, errors: ["time", "max"]})
.then(collected => {
console.log(random_question.correct)
var reaction = collected.first().emoji.name
console.log(reaction)
if (reaction == '?') {
if(random_question.correct == "0")
return message.channel.send("bạn vừa trả lời đúng rồi đấy")
else message.channel.send(`bạn vừa trả lời sai`)
}
else if (reaction == 'B') {
if(random_question.correct == "1")
return message.channel.send("bạn vừa trả lời đúng rồi đấy")
else message.channel.send(`bạn vừa trả lời sai`)
}
else if (reaction == 'C') {
if(random_question.correct == "2")
return message.channel.send("bạn vừa trả lời đúng rồi đấy")
else message.channel.send(`bạn vừa trả lời sai`)
}
else if (reaction == 'D') {
if(random_question.correct == "3")
return message.channel.send("bạn vừa trả lời đúng rồi đấy")
else message.channel.send(`bạn vừa trả lời sai`)
}
})
.catch (errors => {
message.channel.send(` hết giờ! `);
});
})
这是控制台输出:
{
correct: 0,
content: [ 'Orissa', 'Tamil nadu', 'Andhra Pradesh', 'Kerala' ],
question: 'Heavy Water Project (Talcher) and Fertilizer plant (Paradeep) are famous industries of'
}
当我选择“A”时,它会正确响应,但当我选择 B、C、D 时,我无法得到响应 有人可以帮我吗?
答案 0 :(得分:1)
在 return
关键字后不能有任何条件语句(或其他任何内容) - 代码如下:
const filter = (reaction, user) => {
return ['?', '?', '?', '?'].includes(reaction.emoji.name) && !user.bot;}
message.awaitReactions(filter, {max: 1, time: 20000, errors: ["time", "max"]})
.then(collected => {
console.log(random_question.correct)
var reaction = collected.first().emoji.name
console.log(reaction)
if (reaction == '?') {
if(random_question.correct == "0")
return message.channel.send("bạn vừa trả lời đúng rồi đấy")
} else {
message.channel.send(`bạn vừa trả lời sai`)
}
else if (reaction == 'B') {
if(random_question.correct == "1")
return message.channel.send("bạn vừa trả lời đúng rồi đấy")
} else {
message.channel.send(`bạn vừa trả lời sai`)
}
else if (reaction == 'C') {
if(random_question.correct == "2")
return message.channel.send("bạn vừa trả lời đúng rồi đấy")
} else {
message.channel.send(`bạn vừa trả lời sai`)}
else if (reaction == 'D') {
if(random_question.correct == "3")
return message.channel.send("bạn vừa trả lời đúng rồi đấy")
} else {
message.channel.send(`bạn vừa trả lời sai`)
}
})
.catch (errors => {
message.channel.send(` hết giờ! `);
});
})
(抱歉缩进不好)
说明:return 使代码不运行后。此外,else 语句必须在 if 语句的结尾之后。