【问题标题】:From callbacks to async/await in Hapi v17从回调到 Hapi v17 中的异步/等待
【发布时间】:2020-10-27 17:52:52
【问题描述】:

我正在使用 monk 在一个简单的 Hapi v17 应用程序中查询我的 mongodb。

在 v16 中,我曾经使用以下方法检索数据库中的所有项目:

videodb.find({}, {sort: {'created_on': -1}}, function(err, videos) {
  console.log(videos);
  return reply("ok");
});

在 v17 中这不起作用。 Hapi v17 始终要求返回函数可见,并且当页面呈现发生时,我的“回调驱动”函数正在最后执行。

这里的意思是:不能简单的把回复函数放在回调里面。我想我需要使用 Promise 或 async/await 函数。但我已经尝试了几个小时来了解如何。

任何人都可以将上面的代码“翻译”成有效的 Hapi v17 代码,在 僧侣从数据库中检索数据之后简单地调用 h.view("home") 吗?

谢谢!

【问题讨论】:

    标签: javascript async-await hapijs


    【解决方案1】:

    Monk 应该返回一个 Promise,以便您可以将代码重写为

    const videos = await videodb.find({}, {sort: {'created_on': -1}});
    ...
    

    【讨论】:

    • 快速救命的答案。
    猜你喜欢
    • 2021-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-19
    • 2011-05-10
    • 2018-09-22
    • 2017-06-29
    • 2019-11-15
    相关资源
    最近更新 更多