1
我正在使用.map
來映射出一個新對象並將舊價格添加到地圖。Promise {{0}}試圖等待.map
我使用異步/等待我的資料地圖,這裏是我的代碼如下所示:
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
是需要填寫的一個部分,以使其有效。有任何想法嗎?
當然!謝謝,完美的作品。我有一段等待時間,然後我把你的問題作爲答案。 –
@MilesCollier沒問題:) –