我不是一个高级的Web开发人员,这就是为什么我觉得我在问一个愚蠢的问题,但我找不到任何关于如何使pouchDB网站脱机工作的说明。事实上,我没有找到任何东西可能意味着它非常直接,但不知何故我的网站没有加载一旦互联网连接不可用。
在我的代码开头,我正在创建像这样的PouchDB数据库:
data = new PouchDB('data');
users = new PouchDB('local_users');
templates = new PouchDB('templates');
之后我将数据库与CouchDB数据库同步:
//Set remote databases
var remoteCouchDA = new PouchDB('myCouchDB_URL/data');
var remoteCouchTE = new PouchDB('myCouchDB_URL/templates');
var remoteCouchUS = new PouchDB('myCouchDB_URL/usersdoc', {skipSetup: true});
// Initialise a sync with the remote server
function syncDA() {
var opts = {live: true, retry: true};
data.sync(remoteCouchDA, opts);
};
function syncTE() {
var opts = {live: true, retry: true};
templates.sync(remoteCouchTE, opts);
};
function syncUS() {
var opts = {live: true, retry: true};
users.sync(remoteCouchUS, opts);
};
if (remoteCouchDA) {
syncDA();
}
if (remoteCouchTE) {
syncTE();
}
if (remoteCouchUS) {
syncUS();
}
localDB.allDocs()
获得的文件。如果有人能告诉我还需要做些什么来让网站脱机工作,那真是太好了。
答案 0 :(得分:2)
PouchDB将负责在本地存储您的数据,以便离线使用,但是为了让您的网站在离线时仍然加载,您必须确保您的资产(html,javascript和css文件)也在本地缓存。为此,您可以使用Service Worker API。
Service Worker非常强大,起初可能有点令人生畏,但有些库可以帮助您进行设置,例如UpUp或更复杂的用例Service Worker Precache。