node8.2中async.js为什么失效
原来node6.2的时候,我用async.js控制并发,,完全达到预期效果 现在升级到8.2,直接报错了
async.mapLimit(pages, 10, function(url, callback) {
fetchUrl(url, callback);
}, function(err, result) {
console.log('final:');
console.log(result);
});
var concurrencyCount = 0;
function fetchUrl(url, callback) {
concurrencyCount++;
console.log('现在的并发数是', concurrencyCount, ',正在抓取的是', url);
SpiderPage(url);
setTimeout(function() {
concurrencyCount--;
callback(null, url + ' html content');
}, 360);
};
5 回复
去了解一下Node8和Node6有什么区别
报啥错啊? 好歹也贴一个报啥错啊
和原生async冲突了吧
@libook 能大概的说说吗?或者给个链接 自豪地采用 CNodeJS ionic
@KingTree 由于没有贴出错误信息和栈信息以及代码上下文,单纯执行这段代码无法重现问题。 也有可能使用了严格模式,没有严格控制变量声明顺序和作用域。 还有可能依赖包没有升版本或重新安装,导致兼容性问题。 。。。没有调试信息无法下结论。。。 但确实Node6和Node8的区别还挺大的。