Я просмотрел все связанные темы по переполнению стека и перепробовал все, но коды просто не сработали :) Так что я следую руководству YouTube о том, как отключить подписку с помощью бота на Discord, и вот ошибка:
TypeError: person.removeRole is not a function
at Client.<anonymous> (C:\Users\hp\Documents\discordBot\Codes\index.js:39:14)
at Client.emit (events.js:311:20)
at MessageCreateAction.handle (C:\Users\hp\Documents\discordBot\Codes\node_modules\discord.js\src\client\actions\MessageCreate.js:31:14)
at Object.module.exports [as MESSAGE_CREATE] (C:\Users\hp\Documents\discordBot\Codes\node_modules\discord.js\src\client\websocket\handlers\MESSAGE_CREATE.js:4:32) at WebSocketManager.handlePacket (C:\Users\hp\Documents\discordBot\Codes\node_modules\discord.js\src\client\websocket\WebSocketManager.js:386:31)
at WebSocketShard.onPacket (C:\Users\hp\Documents\discordBot\Codes\node_modules\discord.js\src\client\websocket\WebSocketShard.js:436:22)
at WebSocketShard.onMessage (C:\Users\hp\Documents\discordBot\Codes\node_modules\discord.js\src\client\websocket\WebSocketShard.js:293:10)
at WebSocket.onMessage (C:\Users\hp\Documents\discordBot\Codes\node_modules\ws\lib\event-target.js:120:16)
at WebSocket.emit (events.js:311:20)
at Receiver.receiverOnMessage (C:\Users\hp\Documents\discordBot\Codes\node_modules\ws\lib\websocket.js:801:20)
Вот мой код, другие части исключены, если необходимо, я могу поставить их здесь.
case "mute":
let person = m.mentions.members.first() || m.guild.members.fetch(args[1]); //m.guild.member(
//console.log(person);
if (!person) return m.reply("I don't know who this is, bro.");
let mainrole = m.guild.roles.cache.find((role) => role.name === "Main");
let muterole = m.guild.roles.cache.find((role) => role.name === "Mute");
if (!muterole) return m.reply("Sorry they simply don't exsit.");
let time = args[2];
console.log(time);
if (!time) return m.reply("That's not a time. How did you even do it?");
person.removeRole(mainrole.id);
person.addRole(muterole.id);
// person.remove("Main");
// person.add("Mute");
m.channel.send(
`@${person.user.tag} has now been mute for ${ms(ms(time))}`
);
setTimeout(() => {
person.addRole(mainRole.id);
person.removeRole(muterole.id); //switching the order and see how that looks like
m.channel.send(`@${person.user.tag} has been unmuted, good job!`);
}, ms(time));
Заставляет меня задуматься, импортировать ли модуль ms или разногласия . js есть проблемы? Отправить помощь, пожалуйста! Спасибо!