Вы не упоминаете платформу, которую используете, - я предполагаю, что это PWA или Cordova?
Я не видел JQuery defer (), использовавшийся ранее.В документации PouchDb говорится об использовании обратных вызовов или обещаний ES6, поэтому было бы разумно использовать их.С Обещаниями ваш код будет выглядеть примерно так:
getById : function(docId) {
return db.get(docId).then(function(doc) {
return doc;
}).catch(function(err){
return err;
});
}
... это возвращает разрешенное Обещание, которое требует, чтобы вызывающая функция использовала " .then (". Надеюсь, это поможет.