使用更改提要时,有没有办法在 PouchDB 中获取文档的所有修订?
Is there a way to get all revisions of a document in PouchDB when using the change feed?
我现在正在摆弄 PouchDB。我用它作为一种在本地存储数据而不链接到 CouchDB 的方法。我一直试图做的是为单个文档创建一个 revert/undo 方法。为此我想使用以前的修订版"doc"。我在阅读 PouchDB 文档时遇到了更改提要,起初这似乎是一种获取所有 "docs" 所有修订的方法。但是,在尝试获取 "docs" 的所有修订后,我只得到了最新的修订。我尝试了以下方法来获得更改:
db.changes({
since: 0,
style: 'all_docs',
include_docs: true // eslint-disable-line camelcase
}).then(function(results) {
console.log(results);
});
TL;DR 如何在 PouchDB 中获取一个(或所有)文档的所有修订版?
尝试其中一个选项 - 这是来自 pouchdb docs:
db.get(docId, [选项], [回调])
检索由 docId 指定的文档。
选项
除非另有说明,否则所有选项默认为 false。
options.rev:获取文档的特定修订版。默认为获胜版本(参见 CouchDB 指南)。
options.revs: 包括文档的修订历史。
options.revs_info:包括文档的修订列表及其可用性。
options.open_revs:如果 open_revs="all" 则获取所有叶修订或获取 open_revs 数组中指定的所有叶修订。叶子将按照输入数组中指定的相同顺序返回。
在 macrog 的帮助下,我找到了一种方法来完成我想做的事情。简短总结 我想要一种方法来获取我文档的所有修订,包括那些已被删除的文档。这是我现在使用的:
db.get(String(id), {
revs: true,
open_revs: 'all' // this allows me to also get the removed "docs"
}).then(function(found) {
console.log(found);
});
当然,我没有登录者使用 db.changes() 来获取文档的所有修订。但至少我可以做我想做的事
我现在正在摆弄 PouchDB。我用它作为一种在本地存储数据而不链接到 CouchDB 的方法。我一直试图做的是为单个文档创建一个 revert/undo 方法。为此我想使用以前的修订版"doc"。我在阅读 PouchDB 文档时遇到了更改提要,起初这似乎是一种获取所有 "docs" 所有修订的方法。但是,在尝试获取 "docs" 的所有修订后,我只得到了最新的修订。我尝试了以下方法来获得更改:
db.changes({
since: 0,
style: 'all_docs',
include_docs: true // eslint-disable-line camelcase
}).then(function(results) {
console.log(results);
});
TL;DR 如何在 PouchDB 中获取一个(或所有)文档的所有修订版?
尝试其中一个选项 - 这是来自 pouchdb docs:
db.get(docId, [选项], [回调])
检索由 docId 指定的文档。
选项 除非另有说明,否则所有选项默认为 false。
options.rev:获取文档的特定修订版。默认为获胜版本(参见 CouchDB 指南)。
options.revs: 包括文档的修订历史。
options.revs_info:包括文档的修订列表及其可用性。
options.open_revs:如果 open_revs="all" 则获取所有叶修订或获取 open_revs 数组中指定的所有叶修订。叶子将按照输入数组中指定的相同顺序返回。
在 macrog 的帮助下,我找到了一种方法来完成我想做的事情。简短总结 我想要一种方法来获取我文档的所有修订,包括那些已被删除的文档。这是我现在使用的:
db.get(String(id), {
revs: true,
open_revs: 'all' // this allows me to also get the removed "docs"
}).then(function(found) {
console.log(found);
});
当然,我没有登录者使用 db.changes() 来获取文档的所有修订。但至少我可以做我想做的事