0

我对 node 和 express 非常陌生,但我正在尝试在我的 todo 列表应用程序中实现 mongo-watch ( https://github.com/TorchlightSoftware/mongo-watch ) 以收听对 mongodb 集合的更改。现在我的问题是我在哪里声明观察者?在控制器中?应用程序.js?为了只听插入事件,我必须将“selection”和“idSet”设置为什么?我也在使用 Angular。

var MongoWatch, watcher;

MongoWatch = require('mongo-watch');

watcher = new MongoWatch({
  format: 'pretty'
});

watcher.query({
  collName: collName,
  selection: selection,
  idSet: idSet

}, function(err, query) {

  query.on('data', function(event) {
    console.log('something changed:', event);
  });
});

任何指导将不胜感激!

谢谢!

4

2 回答 2

2

我得到它(终于!)以这种方式工作:

MongoWatch = require('mongo-watch');
watcher = new MongoWatch({
    format: 'normal',
    db: 'mydb'    //important!
});
watcher.debug = console.log;

watcher.query(
    { collName: 'mycollection' },   //mydb.mycollection
    function(err, query) {
        if (err) console.log('Error: ', err);
        query.on('data', function(event) {
            console.log('something changed:', event) });
    }
);
于 2013-10-07T13:18:25.407 回答
1

您在要响应其事件的文件中声明观察者。

从源代码来看,似乎 collName 是唯一需要的参数,所以应该不需要包含其他参数。

于 2013-08-04T04:48:14.007 回答