【问题标题】:How to know CouchDB has changed in IONIC app?如何知道 CouchDB 在 IONIC 应用程序中发生了变化?
【发布时间】:2016-04-27 19:25:21
【问题描述】:

我正在使用带有 PouchDBCouchDB 的 Ionic 框架开发约会应用程序。

在应用程序中所做的更改保存在 PouchDB 中,本地数据库将数据完美同步/保存到 Couch 数据库 - 即时。

但我怎么知道 CouchDB 何时更改?

我在 .run() 函数中同步两个数据库 - 但 .run() 仅在应用启动时调用。

当应用程序正在运行/被使用时,我如何知道远程数据库发生了变化?

请提出建议。

【问题讨论】:

    标签: mobile ionic-framework synchronization couchdb pouchdb


    【解决方案1】:

    PouchDB 复制/同步的结果是event emitter。要监听服务器更改,您应该使用{live: true} 复制/同步远程数据库并注册您的处理程序。 例如:

    localDB.sync(remoteDB, {
      live: true,
      retry: true
    }).on('change', function (change) {
      // notify to your app that the remote Couch DB has changed
    }).on('paused', function (info) {
      // replication was paused, usually because of a lost connection
    }).on('active', function (info) {
      // replication was resumed
    }).on('error', function (err) {
      // totally unhandled error (shouldn't happen)
    })));
    

    更多详情请访问pouchdb documentation

    【讨论】:

    • 您好 Federico,非常感谢您的洞察力。我将测试解决方案,并将结果与​​您联系。非常感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-03
    相关资源
    最近更新 更多