2016-08-26 25 views
0

我正在监听只有写入的数据库。 对于我使用下面的代码:使用Pouchdb更改源如何从第一次更改开始

db.changes({ 
since: 'now', 
live: true, 
include_docs: true 
}).on('change', function (change) { 
    // change.id contains the doc id, change.doc contains the doc 
}).on('error', function (err) { 
// handle errors 
}); 

,因为:“现在”从现在开始听的变化,我要开始从第一DOC听,当我赶上我要听现场的变化。

有什么办法可以从第一次更改数据库开始,然后获得实时更改?

感谢

+0

你是什么意思的“第一个文档” - 你的意思是数据库中的第一个变化?如果你的意思是“从第一次改变”,那么你可以从'1'开始传递,然后从头开始。然后,每次更改都会调用'on change'处理程序,无论是旧的更改还是未来的更改。 –

+0

@MikeMcKay感谢您的评论,当我看到沙发db的变化时,我将seq no看作随后是随机字符串的数字。所以我很困惑,如果我只用1尝试,它仍然会经历db开始的变化吗? –

回答

1

不要使用“因为”选项,它总是会在数据库中的第一个变化顺序启动。然后,它会针对数据库中发生的每次更改调用“更改”处理程序,并且还会为将来的所有更改调用“更改”处理程序。我有而不是在CouchDB 2.0上进行了测试,它对序号使用不同的格式(“字符串,而不是数字,因为它对数据库的每个分片的数字序列进行编码”),但是我希望忽略自选项以同样的方式工作。