addEvent
- это смесь async..await
и необработанных обещаний.await
является синтаксическим сахаром для then
.Это либо тот, либо другой.Смесь приводит к неправильному контролю потока;db.App.findOne(...).then(...)
обещание не связано или не возвращено и, следовательно, недоступно извне addEvent
.
Оно должно быть:
async function addEvent(req, callback) {
var db = req.app.get('db');
var event = req.body.event
const app = await db.App.findOne({
where: {
owner_id: req.user_id,
}
});
let promise = new Promise((resolve, reject) => {
setTimeout(() => resolve("done!"), 6000)
})
let result = await promise;
}
Обычно простые обратные вызовы не должны смешиваться с обещаниями.Параметр callback
указывает на то, что API, который использует addEvent
, также может быть обещан.