Javascript DM中的消息不起作用Discord.js
我试图在用户的DM中运行一个waitMessage函数,但它不起作用。有人能帮忙吗 错误:TypeError:无法读取未定义的属性“awaitMessages”Javascript DM中的消息不起作用Discord.js,javascript,node.js,discord.js,Javascript,Node.js,Discord.js,我试图在用户的DM中运行一个waitMessage函数,但它不起作用。有人能帮忙吗 错误:TypeError:无法读取未定义的属性“awaitMessages” const discord = require('discord.js') module.exports = { name: "team", description: "You can create a new team", usage: "team", ca
const discord = require('discord.js')
module.exports = {
name: "team",
description: "You can create a new team",
usage: "team",
category: "info",
run: (client, message) => {
const member = message.member;
const user = message.author;
member.send("Do you want continue ? (Yes/No)");
message.dmChannel.awaitMessages(user == message.author, {max: 1 , time: 40000})
.then (collect => {
if (collected.first().content.toLowerCase() == 'yes') {
member.send("Test")
} else {
member.send("Test")
}
});
}
}```
首先,我建议对多条waitmessages使用async/await,因为代码可能会变得非常嵌套且难以查看 而不是
message.dmChannel.awaitMessages(用户==message.author,{max:1,时间:40000})
使用
let collected=await message.dmChannel.await messages(过滤器,{max:1,时间:400000});
如果您试图只允许触发该命令的用户通过筛选器,只需如下匹配ID:
let filter=(m)=>{m.author.id==message.author.id;}
最后,如果用户未能回复,只需使用try/catch块,如下所示
let filter=(m)=>{
m、 author.id==message.author.id;
};
试一试{
let collected=await message.dmChannel.await messages(过滤器{
最高:1,
时间:40万,
});
let response=collected.first().content.toLowerCase();
如果(回答=“是”){
成员。发送(“测试”);
}否则{
成员。发送(“测试”);
}
}捕获(e){
返回消息。回复(“看起来你回复的时间太长了!”);
}
我希望这能为你服务