Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.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 如何确定消息作者是否是我的mongo数据库的一个元素_Javascript_Node.js_Mongodb_Mongoose_Discord.js - Fatal编程技术网

Javascript 如何确定消息作者是否是我的mongo数据库的一个元素

Javascript 如何确定消息作者是否是我的mongo数据库的一个元素,javascript,node.js,mongodb,mongoose,discord.js,Javascript,Node.js,Mongodb,Mongoose,Discord.js,编辑:这是固定的 很明显,我忘了将猫鼬连接到我的地图册 我正在我的机器人中制作一个高级功能,允许用户播放音乐。唯一的错误是我无法找到如何在数据库中找到消息作者的id 像这样使用wait-before查询: const id = await premiumSchema.findOne({ userID: message.author.id }) 之后,如果要检查类型,请使用==实现业务逻辑 if(id.userID == message.author.id) { re

编辑:这是固定的 很明显,我忘了将猫鼬连接到我的地图册


我正在我的机器人中制作一个高级功能,允许用户播放音乐。唯一的错误是我无法找到如何在数据库中找到消息作者的id

像这样使用wait-before查询:

 const id = await premiumSchema.findOne({
        userID: message.author.id
 
})
之后,如果要检查类型,请使用
==
实现业务逻辑

if(id.userID == message.author.id) {
   return message.reply('You are not a premium user!')
}
返回承诺,该承诺将在找到文档时解析文档,否则
null
。这意味着您可以简单地检查它是否为
null
,而不需要检查ID是否相同。这已经被猫鼬检查过了

不要忘记,如果你在使用承诺,你需要等待结果

试试看{
const premiummber=等待premiumSchema
.findOne({userID:message.author.id})
.exec();
如果(!premiummber){
返回消息。回复('您不是高级用户!');
}
const VC=message.member.voice.channel;
如果(!VC)
返回消息。回复(
'您不是VC!请加入其中一个并重新执行命令!',
);
const connection=wait VC.join();
const dispatcher=连接
.play(ytdl(args[0]))
.on('finish',()=>{
VC.离开();
message.channel.send(`message.author},您的歌曲已结束!`);
})
.on('错误',(错误)=>{
console.log(错误);
message.channel.send('播放此歌曲时出错');
});
调度员:设置音量音量(5/5);
}捕捉(错误){
控制台日志(err);
}

我认为这是可行的,但现在它给了我一个错误:
操作`premium users.findOne()` 10000毫秒后缓冲超时
似乎与原始问题无关,您的连接有问题。看看吧,我把DNS改成了8.8.8.8,但仍然不起作用