节点JS承诺位置

时间:2018-03-26 18:23:20

标签: javascript arrays node.js promise

我正在尝试在Node中进行多个数据库查询和嵌套的foreach函数,但是我无法区分我应该在我的代码中放置promise的位置。我正在使用Sequelize来管理数据库。

我的代码如下:

client.findAll().then((result) => {
        result.forEach(item => {
            vehHistory.findAndCountAll({where:{
                dealerId:item.id,
                createdAt:{$gte:priorDate}
            }}).then((innerResult) => {
                clientArr.push({name: item.name, cars: innerResult.count, balance: innerResult.count*95, id: item.id});
            });
        });
    });

我正在尝试构建promise,以便在foreach循环及其嵌套的数据库调用填充clientArr后,我可以获取值。

我是否会围绕vehHistory.findAndCountAll方法放置承诺,然后在推送客户端数组后解析它,还是将承诺放在clientArr.push方法周围?

来自C#世界的承诺相当新,这对我来说都是相对较新的。

任何反馈都将不胜感激。

0 个答案:

没有答案