向特定频道发送消息(module.exports 上的命令)

时间:2021-07-13 02:03:15

标签: javascript node.js discord discord.js

所以我不想把我的 Main.js 弄得一团糟,所以我尝试通过其他文档中的 module.exports 执行所有可能的命令。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

我将 Client 添加到我的 execute 行: execute(client, message, args, Discord) {

现在我有另一个错误 TypeError: Cannot read property 'cache' of undefined

而且……我现在不知道该怎么办。任何解决方案? 提前致谢。

1 个答案:

答案 0 :(得分:1)

尝试使用 Message 类的 client 属性。这是它的 docs

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();*/
    },
};