@YuryTarabanko спасибо за отличный ответ
ользую.map
наметить новый объект и добавить старую цену на карту.
Я использую Async / Await с моими картами данных, вот как выглядит мой код:
let datasets = await changes.map(async (data) => {
let products = {};
let last = await models.prices.findOne({
where: {
productId: data.productId,
sourceId: data.sourceId
},
order: [['createdAt', 'DESC']],
limit: 1,
offset: 1
});
products.name = data.product.name;
products.price = data.price;
products.sku = data.product.sku;
products.source = data.source.name;
products.link = data.link;
products.diff = last.price;
return products;
});
changes
все изменения цен, найденные за последние 24 часа.
last
содержит предыдущий раз, когда было найдено изменение цены конкретного продукта.
return products
не ждет, поэтому я получаю спамPromise { <pending> }
Сообщения. Если я используюconsole.log(last)
это работает внутри, но я не могу найти правильный способ замедлить возврат.
products.diff = last.price
это один кусок, который должен заполнить, чтобы это было действительным. Есть идеи?