我希望我的Discord机器人删除单个消息的代码 我尝试这段代码
client.on('message', message => {
if (message.content === 'say') {
message.delete (10000);
message.reply('`say!`').then(d_msg => {
d_msg.delete(10000); });
}
但是我得到这个错误
throw err; ^ Error: Cannot find module 'C:\Users\muhad\bot.js' at Function.Module._resolveFilename (internal/modules/cjs/loader.js:966:15) at Function.Module._load (internal/modules/cjs/loader.js:842:27) at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12) at internal/main/run_main_module.js:17:47 { code: 'MODULE_NOT_FOUND', requireStack: [] }
答案 0 :(得分:1)
message.delete()以Object作为参数,而不是整数,因此,您不能使用message.delete(10000)
。
要修复代码,请为Object函数提供一个包含超时(以及可选原因)的message.delete()。
client.on('message', message => {
if (message.content === 'say') {
message.delete({timeout: 10000});
message.reply('`say!`').then(d_msg => {
d_msg.delete({timeout: 10000})});
};
答案 1 :(得分:-1)
在我自己的不和谐机器人上,我使用以下代码段:
message.channel.bulkDelete(amount, true).catch(err => {
console.error(err);
message.channel.send(`there was an error when deleting messages !`);
});
其中金额是!clear-message
命令的参数
E :!clear-message 50