MongooseError:Model.findOne()不再接受回调(计数方案)[重复]

fhg3lkii  于 2023-08-06  发布在  Go
关注(0)|答案(1)|浏览(140)

此问题在此处已有答案

MongooseError: Model.findOne() no longer accepts a callback at Function(3个答案)
昨天关门了。


的数据



这真的让我很困惑,我不知道他们为什么删除了这个选项,或者用什么来替换它,我知道它已经被删除了,但我不知道如何修复它
如果有人能帮上忙那就太好了
我试过更换和调整它,但没有效果

5q4ezhmt

5q4ezhmt1#

Mongo从5.0版开始放弃了对node.js驱动程序回调的支持,转而支持仅限Promise的公共API。Mongoose在v7中也放弃了回调支持,所以findOne()和其他方法现在总是返回一个promise:MongooseError: Model.findOne() no longer accepts a callback at Function

async / await

async function tetsing(guilId) {
  try {
    const data = await countingScheme.findOne({ GuildID: guilId });
    /* ... */
  } catch(err) {
    /* ... */
  }
}

字符串

then / catch

countingScheme.findOne({ GuildID: guilId })
  .then((data) => { /* ... */ })
  .catch((err) => { /* ... */ });

异步

countingScheme.findOne({ GuildID: guilId })
  .then(async (data) => { /* ... */ })
  .catch((err) => { /* ... */ });

相关问题