首页 文章

使用Mongoose EXEC()函数的打字稿async / await

提问于
浏览
0

我正在尝试使用Expresscript和Mongoose的Typescript . 到目前为止,结果令人惊讶 . 然而,我却陷入了一个非常小的角色 .

Premise: I am executing a Mongoose Query using EXEC()

let result = await UserModel.User.find().exec();

我必须使用async / await,因为在这一行之后有一些处理,我想避免回调

Problem

我需要从查询返回的结果对象中获取 {err, data} . 但是目前它只是保存整个数据而我无法执行错误处理

所以当我使用 async/await 时需要一种方法来获取猫鼬错误描述

2 回答

  • 0

    使用 async/await 进行错误处理是通过使用 try/catch 来完成的:

    try {
      let result = await UserModel.User.find().exec();
      ...
    } catch(err) {
      ...
    }
    
  • 2

    尝试使用库await-to-js

    例:

    const to = require('await-to-js') . 默认

    const [err,result] = await to(func())if(err)throw err

    ...

相关问题