【问题标题】:Mongoose (Typegoose) and RXJSMongoose (Typegoose) 和 RXJS
【发布时间】:2019-03-04 10:17:49
【问题描述】:

我正在尝试使用 rxjs.from() 将 mongoose.Model.find(..) 的结果转换为 Observable。

我正在使用 Typegoose,但我无法将 .find 的结果转换为 Promise

MyClassModel.find({}) as Promise<MyClass>

我收到 TS 错误: 将类型“DocumentQuery、InstanceType、{}>”转换为类型“Promise”可能是一个错误,因为这两种类型都没有与另一种充分重叠。如果这是故意的,请先将表达式转换为“未知”。

我找不到解决方案。我也试过了:

MyClassModel.find({}) as Promise<DocumentQuery<InstanceType<MyCLass>, InstanceType<MyClass>>

但没有运气。

有人试过吗?

【问题讨论】:

    标签: typescript mongoose rxjs


    【解决方案1】:

    查询不是承诺。 https://mongoosejs.com/docs/promises.html#queries-are-not-promises

    它们具有.then 功能,但不是完整的承诺。如果您需要承诺,请调用.exec 命令。

    MyClassModel.find({}).exec()
    

    【讨论】:

      猜你喜欢
      • 2020-05-29
      • 2021-08-26
      • 2020-11-19
      • 2020-01-22
      • 1970-01-01
      • 2022-12-17
      • 2021-11-20
      • 2020-12-16
      • 2022-10-18
      相关资源
      最近更新 更多