我是pouchdb
的新手,并且正在阅读下面的源代码:
db.query('product_index', {
startkey: ["01234"],
endkey: ["01234", {}],
include_docs: false
});
此代码执行了很长时间。读取一些pouchdb
文档后,它看起来像是在第一次运行时在数据库上建立了索引。但是我不理解基于以上代码对哪些字段建立索引。
在下面的代码中,我可以看到它在字段foo
上建立索引。但是我如何理解query
用于构建索引的API?通过索引感知使用query
和createIndex
有什么区别?
db.createIndex({
index: {
fields: ['foo']
}
})
答案 0 :(得分:0)
您看过PouchDB Guide Bulk operations部分Please use 'allDocs()'. Seriously.吗?
太多的开发人员忽略了这个有价值的API,因为他们 误会了。当开发人员说“我的PouchDB应用程序运行缓慢!”时,它会 通常是因为他们在使用慢速
query()
API时 应该使用快速的allDocs()
API。
在设计数据结构时,记住这一点非常重要。您应该定义记录ID字段,以优化通过allDocs()
的数据可访问性。