Discord.js MongooseError: Callback must be a function, got [object Object]

Posted

技术标签:

【中文标题】Discord.js MongooseError: Callback must be a function, got [object Object]【英文标题】: 【发布时间】:2021-05-13 14:05:39 【问题描述】:

[编辑] 这是固定的

所以,我添加了一个高级删除命令,以便我可以在任何给定时间从用户那里删除高级。但是,我试了一下,它响应了这个错误:

我该如何解决这个问题?

如果需要更多信息,请在 discord (magma#9950) 上私信我或发表评论。

await mongo().then(async (mongoose) => 
        try 
            await premiumSchema.deleteOne(
                userID: user.id
            , 
                userID: user.id,
                username: user.username
            , 
                upsert: true
            )
         finally 
            mongoose.connection.close();
        
    )

【问题讨论】:

【参考方案1】:

.deleteOne()接受三个参数;过滤器对象、选项对象和回调函数。您将对象作为第三个参数 ( upsert: true ) 传递,这就是 Mongo 抱怨 callback must be a function, got [object Object] 的原因。

您好像只是用deleteOne 替换了updateOnefindOneAndUpdate 方法,还没有检查documentation 如何使用它。

我不确定您要删除什么。如果是具有特定用户ID的文档,则可以使用以下内容:

try 
  await premiumSchema.deleteOne( userID: user.id );
 finally 
  // ...

【讨论】:

不客气。如果这回答了你的问题,请接受它,这样我们双方都会获得更多的声誉,其他用户可以看到这个答案解决了你的问题。见此链接:***.com/help/someone-answers

以上是关于Discord.js MongooseError: Callback must be a function, got [object Object]的主要内容,如果未能解决你的问题,请参考以下文章

MongooseError [ParallelSaveError]:无法并行保存()同一个文档

MongooseError:操作“featureds.find()”缓冲在 10000 毫秒后超时

MongooseError:操作“featureds.find()”缓冲在 10000 毫秒后超时

MongooseError:操作 `products.insertOne()` 缓冲在 10000 毫秒后超时

MongooseError:操作 `blacklistScema.find()` 缓冲在 10000 毫秒后超时

使用 import 而不是 require() 时带有 uuid 的 MongooseError