我正在尝试编写一个可写流,该流采用对象流并将它们输入到 mongodb 数据库中。在消费对象流之前,我首先需要等待数据库连接建立,但我似乎做错了什么,因为程序永远不会到达插入部分。
// ./mongowriter.js
let mongo = mongodb.MongoClient,
connectToDb = _.wrapCallback(mongo.connect);
export default url => _.pipeline(s => {
return connectToDb(url).flatMap(db => {
console.log('Connection established!');
return s.flatMap(x => /* insert x into db */);
});
});
....
// Usage in other file
import mongowriter from './mongowriter.js';
let objStream = _([/* json objects */]);
objStream.pipe(mongoWriter);
该程序只是退出而没有“建立连接!” 曾经被写入控制台。
我错过了什么?我应该遵循某种成语吗?