这里的错误是什么?

时间:2018-05-21 18:17:09

标签: javascript

对于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是命令参数

2 个答案:

答案 0 :(得分:1)

您正在分配值而不是比较。

更新
if (roles.UseAsBlacklist = false) {
} else if (roles.UseAsBlacklist = true){

if (roles.UseAsBlacklist == false) {
} else if (roles.UseAsBlacklist == true){

供参考,MDN

答案 1 :(得分:1)

如果您想要比较 roles.UseAsBlacklisttruefalse,请使用==运算符:

if (roles.UseAsBlacklist == false) {}
else if (roles.UseAsBlacklist == true) {}

以下roles.UseAsBlacklist的值更改为false,然后检查它是否为true。因此条件 不是 符合&amp;什么都没有输出。

if (roles.UseAsBlacklist = false)