MongoDb错误是什么:预期为';查询';为BSON(或等效),但改为获取BSON.ObjectId

MongoDb错误是什么:预期为';查询';为BSON(或等效),但改为获取BSON.ObjectId,mongodb,typegoose,Mongodb,Typegoose,我有一个nest.js+mongodb+typegoose应用程序 我得到以下错误: “查询”应为BSON(或等效项),但得到的是BSON.ObjectId 在deleteById方法中: export abstract class BaseService<T extends Typegoose> { protected _model: ModelType<T>; //............other methods............ async

我有一个
nest.js
+
mongodb
+
typegoose
应用程序

我得到以下错误:

“查询”应为BSON(或等效项),但得到的是BSON.ObjectId

deleteById
方法中:

export abstract class BaseService<T extends Typegoose> {
  protected _model: ModelType<T>;

  //............other methods............

  async deleteById(id: string): Promise<DocumentType<T>> {
    // ERROR IN THIS LINE >>
    return this._model.findOneAndDelete(id).exec();
  }
}
导出抽象类BaseService{
受保护的_模型:ModelType;
//其他方法。。。。。。。。。。。。
异步deleteById(id:string):承诺{
//此行中的错误>>
返回此参数。_model.findoneanddellete(id.exec();
}
}

注意:传递的
id
在数据库中是有效的
id

函数需要一个BSON文档作为参数

试一试


findOneAndDelete
函数需要一个BSON文档作为参数

试一试

findOneAndDelete({_id:id})