#javascript #node.js #discord #discord.js
Вопрос:
Так что я не хочу устраивать беспорядок в своей Main.js поэтому я стараюсь выполнять все возможные команды через module.exports в других documents.js
В принципе, мне нужно, чтобы, если я отправлю команду, бот удалит мое сообщение и опубликует комментарий встраивание на определенном канале. Это то, что у меня есть (упрощение):
module.exports = {
name: 'chtest',
execute(message, args, Discord) {
let chComment = 'Normal comment';
chComment = 'nLine2';
message.channel.send(chComment)
const chEmbed = blablaEmbedCode
message.channel.send(chEmbed)
message.delete();
},s
};
Я прочитал другие вопросы, и они используют
client.channels.cache.get(`Channel_ID`).send('Text')
Я попытался использовать его, но получил ошибку ReferenceError: client is not defined
Я добавил клиента в свою строку выполнения: execute(client, message, args, Discord) {
И теперь у меня есть еще одна ошибка TypeError: Cannot read property 'cache' of undefined
И… Я не знаю, что теперь делать. Есть какие-нибудь решения? Заранее спасибо.
Ответ №1:
Попробуйте сделать это, используя свойство Message
класса. client
Вот документы для этого.
module.exports = {
name: 'chtest',
execute(message, args, Discord) {
let channel = message.client.channels.cache.get('CHANNEL_ID');
//channel is now the channel, unless it could not be found.
channel.send('Message');
/*let chComment = 'Normal comment';
chComment = 'nLine2';
message.channel.send(chComment)
const chEmbed = blablaEmbedCode
message.channel.send(chEmbed)
message.delete();*/
},
};
Комментарии:
1. О, я понимаю, большое вам спасибо!! Я проверил это, это сработало!