2

Couch DB を使用して、cordova ionic アプリの場所を保存しています。また、データの複製に PouchDB を使用しています。すべてうまく機能していますが、アプリケーションを続行する前に最初のレプリケーションが完了していないようです。そのため、2 回目にページに入るまでデータが表示されません。「完了」オプションが機能していないようです (または、アラートが発生しないため、使用方法がわかりません)。私はすべてを解決しようとしましたが、変化はありませんでした。

角度サービスの私のコードは次のとおりです。

var db = new PouchDB('gardens');
var remoteDB = "https://test.couchappy.com/test";
var opts = {continuous: true, xhrFields:{withCredentials:true}, complete: function() {
  alert('test');
}};
db.replicate.from(remoteDB, opts);
var gardens2 = [];

db.allDocs({include_docs: true}, function(err, doc) {
  console.log(doc);
  _.each(doc.rows, function(i){
    console.log(i.doc.name);
    gardens2.push({
      name: i.doc.name,
      lat: i.doc.lat,
      lng: i.doc.lng,
      message: i.doc.message
    });
  });
  console.log(gardens2);
4

1 に答える 1

1

complete は、複製が完了したときにのみ呼び出されます。複製が完了した場合、live:true追加された新しいドキュメントを複製し続けるため、完了しません。

于 2014-06-12T09:54:03.503 に答える