У меня есть приложение узла для получения изменений couchdb с помощью couchdb-change-events npm.Я добавил один просмотр документ для изменений фильтра.Поэтому я вызываю слушателя изменений с помощью view doc.Это работает правильно.Вернуть только отфильтрованные документы.
Если я изменю вид документа (условие фильтра) в couchdb, он не будет отображаться здесь.Это будет отражаться только при перезапуске узла.Это моя кодировка
router.get('/dbchanges', function (req, res) {
this.couchdbEvents = new CouchdbChangeEvents({
lastEventId : seq,
database: 'lookupfetchtest',
host: '192.168.50.555',
port:'5984',
user: 'prabu',
password: 'prabu',
protocol : 'http',
view: "listener_filter/listener_filter",
limit: 1
});
this.couchdbEvents.on('data', (data) => {
console.log('===========> data', data);
seq = data['seq']
})})
Здесь listener_filter - это имя документа просмотра.Это мой вид документа
{
"_id": "_design/listener_filter",
"_rev": "21-83bff5c073d607fbb7d50c1712d48573",
"views": {
"listener_filter": {
"map": "function(doc) {\nif (doc['data']) {\n if (doc['data']['type'] == 'employee') {\n emit(doc);\n }\n }\n}"
}
}
}