【问题标题】:mongoose returning validation by promises or i need to implement it?猫鼬通过承诺返回验证还是我需要实现它?
【发布时间】:2021-10-14 22:38:06
【问题描述】:

当我使用 mongoose 函数时,例如 find、save、updateOne 等。
返回 obj/成功/失败的最佳实践是什么?
直到现在我返回了一个新的承诺,但也许有一个内置的功能?

到目前为止我使用的示例代码:

function updatePost(name) {

  return new Promise((resolve, reject) => {
        mongooseModel.updateOne({_id: id}, {title: title,author: author,body: body}, err => {
      if (err) {
        reject(err);
      } else {
        resolve();
      }   
    });
  });
}

所以我想也许mongooseModel.updateOne 本身就是一个承诺,它可以在没有我的新承诺的情况下返回这个错误/成功。

如果不是,那么做这种事情的最佳做法是什么?

【问题讨论】:

    标签: node.js mongodb mongoose promise


    【解决方案1】:

    你可以这样做。

    参考。 https://mongoosejs.com/docs/api/model.html#model_Model.updateOne

    async function updatePost(name) {
      try {
        const res = await mongooseModel.updateOne(
          { _id: id },
          { title: title, author: author, body: body }
        );
        return res;
      } catch (err) {
        throw err;
      }
    }
    

    【讨论】:

    • res 得到什么?一个字符串?物体?那么返回像find()这样的结果的函数呢?我必须进行回调吗?
    • @shamgar,相关question在这里。
    猜你喜欢
    • 2018-02-15
    • 2019-02-13
    • 2018-08-19
    • 1970-01-01
    • 2016-06-10
    • 1970-01-01
    • 2021-12-04
    • 2015-05-12
    • 2020-12-24
    相关资源
    最近更新 更多