Mongoose ObjectId не соответствует в typescript

#node.js #mongodb #mongoose

#node.js #mongodb #mongoose

Вопрос:

Я определил интерфейс с помощью mongoose.

 import {Types} from 'mongoose'    

export interface IShop {  
  readonly center: Types.ObjectId;    
}


async create(data):Promise<IShop>{
   const result = await new this.model(data).save
   return result
}
 

И есть шхема, как показано ниже.

  {
   center: mongoose.Schema.Types.ObjectId
 }
 

Но это дает ошибку типа, говорящую

Ошибка: (18, 5) TS2322: типы свойств ‘center’ несовместимы. В типе ‘ObjectId’ отсутствуют следующие свойства из типа ‘ObjectId’: generationTime, equals, getTimestamp, toHexString

Но когда я определяю mongoose.Schema.Types.ObjectId в интерфейсе, это хорошо сочетается. Но я должен где-то использовать Types.ObjectId для изготовления new Types.ObjectId(string) .

Не могли бы вы дать мне несколько советов по этому поводу?

Я использую mongoose 5.11.9 и не использую @types/mongoose .

Комментарии:

1. Вы нашли что-нибудь? возникает та же проблема