サーチ…


備考

さらなるAppcacheリサーチ

http://www.html5rocks.com/en/tutorials/indexeddb/todo/
http://grinninggecko.com/2011/04/22/increasing-chromes-offline-application-cache-storage-limit/
http://www.html5rocks.com/ja/tutorials/offline/quota-research/
https://developers.google.com/chrome/apps/docs/developers_guide?csw=1#installing
https://developers.google.com/chrome/apps/docs/developers_guide?csw=1#manifest

Meteor.status()

Meteorアプリケーションをオフラインにするときにまず行うべきことは、ローカルクライアントアプリケーションがサーバーに接続されているかどうかを視覚的に示すことです。これを行う方法はたくさんありますが、最も簡単な方法はおそらくこのようなことです:

Template.registerHelper('getOnlineStatus', function(){
  return Meteor.status().status;
});

Template.registerHelper('getOnlineColor', function(){
  if(Meteor.status().status === "connected"){
    return "green";
  }else{
    return "orange";
  }
});
  <div id="onlineStatus" class="{{getOnlineColor}}">
    {{getOnlineStatus}}
  </div>
.green{
  color: green;
}
.orange{
  color: orange;
}

Appcacheを有効にする

簡単な手順の1つは、appcacheを追加することです。 Appcacheを使用すると、インターネットにアクセスできない場合でもアプリケーションコンテンツを読み込むことができます。あなたはmongoサーバーからデータを取得することはできませんが、静的なコンテンツと資産はオフラインで利用できます。

meteor add appcache

GroundDBを有効にする

最後に、動的データの一部をオフラインで保存する必要があります。

meteor add ground:db
Lists = new Meteor.Collection("lists");
GroundDB(Lists);

Todos = new Meteor.Collection("todos")
GroundDB(Todos);

気をつけるべきこと

  • Meteorの自動更新機能が隠されているため、appcacheは開発ワークフローに混乱を招きます。あなたのアプリケーションのサーバーコンポーネントをオフにすると、ブラウザのクライアント部分は引き続き動作します。これは良いことです!しかし、あなたは、あなたのアプリがオフになっている、または更新があったという即時のフィードバックは得られません。
  • appcacheを使用しないため、アプリの開発中にChromeのシークレットモードを使用してみてください。
  • groundDBは、IronRouterで特にうまく機能しません。


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow