当另一个应用程序将新文档插入集合中时,我正在尝试设置MongooseJS以推出整个集合(或只是最新的项目)。
我认为QueryStream是要走的路。
但是,当我启动我的简单应用程序时,它会读取一次集合,然后将其关闭。
当我插入一个新文档时,什么也没有发生(假设连接不再打开并正在寻找新的结果......?)
var Orders = db.model('orders', OrderSchema);
var stream = Orders.find().stream();
stream.on('data', function(doc){
console.log('New item!');
console.log(doc);
}).on('error', function (error){
console.log(error);
}).on('close', function () {
console.log('closed');
});
立即打印当前在orders 集合中的所有项目,然后打印“已关闭”。当集合发生变化时,“流”不应该保持打开打印新数据吗?
我不明白什么MongooseJS QueryStream
?
附言。我的目标是最终emit
通过socket.io
如下所示更新集合:Mongoose stream return few results first time