2016-12-11 4 views
0

私は愚かな質問をしているような気がするのですが、pouchDBのWebサイトをオフラインで動作させる方法を見つけることができませんでした。私が何かを見つけられなかったという事実は、それがかなりまっすぐであることを意味するかもしれませんが、何らかの形でインターネット接続が利用できないと、私のウェブサイトは読み込まれません。私のコードの開始時にPouchDBをオフラインで作業するには?

私はこのようなPouchDBデータベースを作成しています:私は取得

//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(); 
    } 

文書:

data = new PouchDB('data'); 
users = new PouchDB('local_users'); 
templates = new PouchDB('templates'); 

その後、私は私のCouchDBのデータベースとデータベースを同期していますlocalDB.allDocs()。ウェブサイトをオフラインにするために他に何が必要なのか誰かに教えてもらえれば本当に素晴らしいだろう。

答えて

2

PouchDBはデータをローカルに保存するため、オフラインでも利用できますが、オフラインでもウェブサイトを読み込めるようにするには、アセット(html、javascript、cssファイル)をローカルにキャッシュする必要がありますあまりにも。そのためにはService Worker APIを使用できます。

Service Workerは非常に強力で、最初は気にすることはできませんが、UpUpなどの設定や、より複雑な使用例Service Worker Precacheなどのセットアップに役立つライブラリがあります。

+0

ありがとう、パトリシア。私はそれにちょっと心配しましたが、これは完全に意味があります^^ – TotoSchillaci

関連する問題