【发布时间】:2020-12-09 14:30:30
【问题描述】:
我正在尝试使用 foreach 将获取的数据推送到数组中,但它只返回循环中的第一个数据。这是我的代码。
exports.getAllTrial = async function (req, res, next) {
try {
new Promise( async (resolve, reject) => {
var reservations = [];
await Schedule.getSchedule()
.then(data => {
data.forEach(async (element) => {
await saveReserve.getAllTrial({where: {scheduleID: element.id, date: "8/18/2020"}})
.then(trial => {
trial.forEach(response => {
reservations.push(response.scheduleID)
})
})
console.log(reservations);
resolve(reservations);
})
});
})
.then(value=>{
res.status(200).json(value);
})
.catch(err => {
console.log(err);
});
} catch (e) {
return res.status(400).json({ status: 400, message: e.message });
}
}
我的预期输出应该是:[ 9, 10, 10 ] 但它只返回 [9]。
【问题讨论】:
标签: node.js arrays foreach sequelize.js