我正在使用和尚在一个简单的Hapi v17应用程序中查询mongodb。
在v16中,我曾经使用以下命令检索数据库中的所有项目:
videodb.find({}, {sort: {'created_on': -1}}, function(err, videos) {
console.log(videos);
return reply("ok");
});
在v17中,此功能无效。 Hapi v17始终要求返回函数可见,并且在发生页面渲染时,我的“以回调为动力”的函数将在最后执行。
其含义是:我不能简单地将Reply函数放入回调中。我想我需要使用Promise或async / await函数。但是我已经尝试了好几个小时才能了解操作方法。
在和尚从数据库中检索到数据之后,有人可以将上面的代码“转换”为有效的Hapi v17代码,该代码简单地调用h.view(“ home”)吗?
谢谢!
最佳答案
和尚应该返回一个承诺,以便您可以将代码重写为
const videos = await videodb.find({}, {sort: {'created_on': -1}});
...