我使用highland.js
来处理使用流读取两个分隔符之间的内容的文件。我还使用async.js
按顺序运行一系列http请求。使用异步处理高地流数据块
理想情况下,我想将来自高地的输出x
作为第一个函数传递给async
系列(链),以便为从流中提取的每个块执行HTTP请求。
这可能吗?如果是这样,这怎么能实现呢?
var async = require('async');
var _ = require('highland');
_(fs.createReadStream(files[0], { encoding: 'utf8' }))
.splitBy('-----BEGIN-----\n')
.splitBy('\n-----END-----\n')
.filter(chunk => chunk !== '')
.each(function (x) {
}).done(function() {
async.series([
function(callback) {
setTimeout(function() {
console.log('Task 1');
callback(null, 1);
}, 300);
},
function(callback) {
setTimeout(function() {
console.log('Task 2');
callback(null, 2);
}, 200);
},
], function(error, results) {
console.log(results);
});
});;
在这种情况下做了什么? – abdulbarik
为什么'x'没有传递给'javascript'处的函数? – guest271314
'done' http://highlandjs.org/#done是我工作代码的宿醉,并告诉流程结束。我可能会删除它。 – user1513388