对于discord.js
我制作了这段代码来检查我的机器人是否可以看到命令作者是否有角色
module.exports = {
main: function(Bot, message, args, prefix) {
const roles = require("../config/roles.json");
if (roles.UseAsBlacklist = false) {
let tempRole = message.guild.roles.find("name", args);
if(message.member.roles.has(tempRole.id)) {
console.log(`Yay, the author of the message has the role!`);
} else {
console.log(`Nope, noppers, nadda.`);
}
} else if (roles.UseAsBlacklist = true){
}
},
help: ` <rolename> / attaches/removes roles to/from you`
}
......但最终它没有输出任何内容,无论我是否将这个角色附加到自己身上。我读到了它:
message.member.roles.has(roleID);
我自己找不到错误。
P.S。 args
是命令参数
答案 0 :(得分:1)
您正在分配值而不是比较。
从
更新if (roles.UseAsBlacklist = false) {
} else if (roles.UseAsBlacklist = true){
到
if (roles.UseAsBlacklist == false) {
} else if (roles.UseAsBlacklist == true){
供参考,MDN
答案 1 :(得分:1)
如果您想要比较 roles.UseAsBlacklist
与true
或false
,请使用==
运算符:
if (roles.UseAsBlacklist == false) {}
else if (roles.UseAsBlacklist == true) {}
以下将roles.UseAsBlacklist
的值更改为false
,然后检查它是否为true
。因此条件 不是 符合&amp;什么都没有输出。
if (roles.UseAsBlacklist = false)