J'essaie de synchroniser une instance PouchDB locale à un CouchDB distant. Les choses fonctionnent bien, mais je ne suis pas sûr de savoir comment gérer la situation suivante:PouchDB détecter les documents qui ne sont pas synchronisés
J'ai ajouté une règle de validation dans CouchDB pour empêcher la mise à jour (toutes les mises à jour seront refusées). Lorsque j'exécute la fonction de synchronisation sur mon instance PouchDB locale après avoir modifié un document, l'événement «refusé» se déclenche comme je l'attendrais. Cependant, si j'exécute la synchronisation une seconde fois, l'événement "denied" ne se déclenche plus, même si le document local diffère de la version de CouchDB.
Comment puis-je vérifier si la base de données locale correspond à la base de données distante? Si l'événement "denied" me manque la première fois (disons que l'utilisateur ferme le navigateur), comment puis-je détecter lors de la prochaine exécution que les bases de données ne sont pas synchronisées? Comment puis-je forcer PouchDB à essayer de synchroniser à nouveau le document modifié afin que je puisse voir l'événement refusé?
Merci!
syncPouch: function(){
var opts = {};
var sync = PouchDB.sync('orders', db.remoteDB, opts);
sync.on('change', function (info) {});
sync.on('paused', function(){
});
sync.on('active', function() {});
sync.on('denied', function(err){
//This only fire once no matter how many times I call syncPouch
console.log("Denied!!!!!!!!!!!!");
debugger;
});
sync.on('complete', function (info) {
//This fires every time
console.log("complete");console.log(info);
});
sync.on('error', function(err){
debugger;
});
return sync;
},