node.js中 循环中嵌套了异步,怎么让它实现类似同步的效果
答案:2 悬赏:0 手机版
解决时间 2021-02-15 09:05
- 提问者网友:我们很暧昧
- 2021-02-14 11:52
node.js中 循环中嵌套了异步,怎么让它实现类似同步的效果
最佳答案
- 五星知识达人网友:杯酒困英雄
- 2021-02-14 12:52
1)你为什么不能再getByMerchantId的时候把image也同时获取了呢。你现在这样做多麻烦呀
2)如果一定要这样做,那么参考以下代码
(function(watchLength){
var current=0;
displays.forEach(function (display) {
imageService.getByDisplayId(display.id).then((image)=> {
display.image = image;
current++;
if(current===watchLength){
res.send(displays);
}
});
});
}(displays.length));
2)如果一定要这样做,那么参考以下代码
(function(watchLength){
var current=0;
displays.forEach(function (display) {
imageService.getByDisplayId(display.id).then((image)=> {
display.image = image;
current++;
if(current===watchLength){
res.send(displays);
}
});
});
}(displays.length));
全部回答
- 1楼网友:胯下狙击手
- 2021-02-14 13:52
node里几乎所有用到回调函数的地方,都是异步的,回调函数后面的代码很可能比回调函数中的代码后先执行,特别是数据库操作。当然,node也提供了同步版本的函数,例如文件操作,fs.readFileSync()是fs.readFile()的同步版本。 同步和异步操作使用
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯