我尝试在我的Ionic 3应用程序中进行过滤复制,但是在阅读了一些文档后,它被挂起的文档卡住了,并且complete事件也没有被触发。当我在移动的上构建和运行应用程序时,就会发生这种情况。
使用ionic serve
运行的应用程序工作正常。
应用程序:
带cordova-sqlite插件(2.0.3)的离子3 PouchDB(6.4.3)治疗床版本:2.1.2
设定
PouchDB.plugin(require('pouchdb-find').default);
PouchDB.plugin(cordovaSqlitePlugin);
this.db = new PouchDB(gstin, {
adapter: 'cordova-sqlite', location: 'default'
});
复制选项:
{
filter: 'Generic/xxxxx',
query_params: {
id: xxx,
deviceId: xxxx
},
batch_size: 10
}
上次更改控制台,
{
ok: true,
start_time: "2018-09-07T09:18:16.204Z",
docs_read: 136,
docs_written: 136,
doc_write_failures: 0, …}
doc_write_failures:0
docs:(11) [{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}]
docs_read:136
docs_written:136
errors:Array(0)
length:0
__proto__:Array(0)
last_seq:"xxxxxx"
ok:true
pending:402
start_time:"2018-09-07T09:18:16.204Z"
__proto__:Object
1条答案
按热度按时间juzqafwq1#
在学习如何一起使用PouchDb/CouchDb的同时,对它们进行修补可能会使同步指针处于一种奇怪的状态。
我可以建议您尝试使用数据库的全新示例吗?
我发现有必要创建CURL脚本来完全重建我的测试数据库,然后再花费任何认真的努力来跟踪为什么有些东西不工作。
我相信,如果您要显示正在使用的筛选器和复制命令的完整代码,而不仅仅是选项,您可以在此处获得更多帮助。
更新:我还强烈建议您创建一个简单的CouchDb服务器(或一个免费的层Cloudant数据库),创建一个非常简单的带有默认服务的浏览器应用程序(而不是cordova-sqlite),并测试您对复制工作原理的假设。