【发布时间】:2021-11-15 14:23:11
【问题描述】:
我正在制作一个与 discord.js 不和谐的管理机器人。我正在尝试创建一个赋予用户特定角色的命令。因此,我想先检查该用户是否事先具有该特定角色,以避免错误。问题在于检查用户是否具有角色的 if 语句,它给了我一个错误“TypeError:无法读取未定义的属性(读取'has')”。请建议我如何解决这个问题。
const {
Role,
ThreadManager
} = require("discord.js");
const ms = require('ms');
module.exports = {
name: 'gulag',
description: "gulag",
execute(message, args) {
if (message.member.permissions.has("ADMINISTRATORS")) {
const target = message.mentions.users.first();
const check = message.mentions.users.first();
if (target) {
let gulagRole = message.guild.roles.cache.find(role => role.name === 'gulag');
let memberTarget = message.guild.members.cache.get(target.id);
if (check.roles.has(gulagRole.id)) {
message.reply(`<@${memberTarget.user.id}> is already in gulag.`)
} else {
memberTarget.roles.add(gulagRole.id);
message.channel.send(`<@${memberTarget.user.id}>`);
message.channel.send('https://tenor.com/view/gulag-warzone-call-of-duty-cod-battle-royale-gif-16853559');
}
}
}
}
}
【问题讨论】:
-
你在使用 Discord.js v13吗?
标签: javascript discord.js