我是新来表达js和sequelize。 我想显示所有用户及其订单(可以超过1个)。
我的代码是
app.get('/test', function (req, res) {
var arr = [];
db.user.findAll().then(
function (resp) {
for (i = 0; i < resp.length; i++) {
arr.push(Object.assign({},
{
user_id: resp[i]['id'],
user_email: resp[i]['email'],
data: x(resp[i]['id'])
}))
}
res.send(arr);
}
);
});
以及给我特定用户订单的功能
var x = function (n) {
var arr1 = [];
db.order.findAll({ where: { userId: n } }).then(function (response) {
for (i = 0; i < response.length; i++) {
arr1.push(Object.assign({},
{
order_id: response[i]['id'],
order_total: response[i]['totalAmount']
}));
}
});
return arr1;
}
这只是向我展示了所有用户,而不是他们的特定订单,函数返回的数组长度&#39; x&#39;是0,我知道这个问题与承诺和解决的结果有关。我试过.resolve(),. success() 但没有任何作用。我该如何解决?感谢