0
我正在使用Promise來使回調地獄無效。鍵入'Promise <Document>'不可分配鍵入'Promise <Document>'
但我遇到了類型轉換問題。
這裏是我的方法或函數定義:
findById(entityId: string): Promise<mongoose.Document> {
return this._model.findById(entityId).exec();
}
的打字稿提示一些錯誤有關:
[TS]類型 '無極' 是不能分配給鍵入 '承諾'。 'then'屬性的類型不兼容。 ((onFulFill:(result:Document)=> void | U | Promise,onReject ?:(err:any)=> void | U | P ...'不能分配給類型'{(onfulfilled ?: :(值:文檔)=> TResult | PromiseLike,onrejected ?:(reas ...' 類型'Promise'不可分配鍵入'Promise' 'Promise'類型中缺少屬性'catch'
我想知道如何失去此問題?使用
好像有你正在使用兩種不同的'Promise'類型。你聲明在函數簽名中返回的那個與exec()返回的不一樣。 –
this._model是mongoose對象,exec()將返回Promise –
從我所看到的,mongoose正在使用A + promise庫,這是與本機實現不同的實現。你似乎在混合它們兩個 –