gpt4 book ai didi

javascript - 尝试向特定 channel 发送消息,但无法定义我的客户端

转载 作者:行者123 更新时间:2023-12-04 08:09:59 25 4
gpt4 key购买 nike

我有一个命令可以清除一定数量的消息,现在可以正常工作,但我试图让机器人向日志 channel 发送一条消息,告诉模组和管理员,删除了多少消息以及谁删除了它们。
这是现在清除文件中的所有代码:

module.exports = {
name: 'clear',
description: "clears messages",
async execute(message, args){
if(message.member.roles.cache.has('802911784892760074')){//If mod
if(!args[0]) return message.reply('Enter amount');
if(isNaN(args[0])) return message.reply('Enter amount');

if(args[0] > 100) return message.reply('To high');
if(args[0] < 1) return message.reply('To low');

await message.channel.messages.fetch({limit: args[0]}).then(messages =>{
message.channel.bulkDelete(messages);

client.channels.cache.get('799292569825443860').send(`${message.author} has cleared ${args} messages!`)
});
}
}
这是似乎不起作用的代码行:
client.channels.cache.get('799292569825443860').send(`${message.author} has cleared ${args} messages!`)
命令提示符说没有定义客户端,但我在主js文件中定义了客户端。
const client = new Discord.Client();
我对此还是很陌生,我可能只是缺少一些非常基本的东西。 (如果这个问题对理解的人来说很愚蠢,我很抱歉)任何帮助都会很棒,因为我似乎在这里遇到了障碍。

最佳答案

那个client不会只是神奇地出现在您的命令文件中。您需要通过 client作为一个论点:

async execute(message, args, client){
// ...
而在 main.js :
commands.get('clear').execute(message, args, client)

关于javascript - 尝试向特定 channel 发送消息,但无法定义我的客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66024323/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com