Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何删除已编辑的邮件discord.js_Javascript_Node.js_Discord_Discord.js - Fatal编程技术网

Javascript 如何删除已编辑的邮件discord.js

Javascript 如何删除已编辑的邮件discord.js,javascript,node.js,discord,discord.js,Javascript,Node.js,Discord,Discord.js,我正在制作一个发送随机GIF的机器人,但是GIF需要很长时间才能加载,所以我想告诉用户,通过说“GIF需要很长时间才能加载”,然后编辑消息,说“收集随机GIF”,然后我想让它删除编辑过的消息。这是我的密码: if (message.content === 'zhood'){ message.channel.send("*Gifs take long to load, please wait*").then((msg) => setTimeout(func

我正在制作一个发送随机GIF的机器人,但是GIF需要很长时间才能加载,所以我想告诉用户,通过说“GIF需要很长时间才能加载”,然后编辑消息,说“收集随机GIF”,然后我想让它删除编辑过的消息。这是我的密码:

if (message.content === 'zhood'){
        message.channel.send("*Gifs take long to load, please wait*").then((msg) => setTimeout(function(){
            msg.edit('*Collecting random GIFs*');
          }, 1000))
        .then(msg =>{
            msg.delete({ timeout: 2000 })
        })
}
这是给出的错误:

(node:12248) UnhandledPromiseRejectionWarning: TypeError: msg.delete is not a function
我还尝试过执行
message.delete({timeout:2000})
,但没有什么不同


谢谢你的帮助

您可以使用async/await这样做:

const waitMsg=wait message.channel.send('*gif需要很长时间才能加载,请稍候*);
设置超时(()=>{
waitMsg.edit(“*收集随机GIF*”);
}, 1000);
delete({timeout:2000});

您不必创建另一个
。然后()
回调,只需在第一个回调中继续:

if(message.content=='zhood'){
message.channel.send('*gif需要很长时间才能加载,请稍候*)。然后((msg)=>{
设置超时(()=>{
msg.edit(“*收集随机GIF*”);
}, 1000);
msg.delete({timeout:2000});
});
}