私の質問は、このトピックのフォローアップです。これまで見た中で、Firebase のシンプルさとパフォーマンスが気に入っています。
私が理解しているように、firebase.js はサーバーからのデータ スナップショットを Javascript メモリ内のオブジェクトに同期します。ただし、現在、このデータをディスクにキャッシュする機能はありません。
結果として:
- アプリケーションは起動時に接続する必要があるため、真のオフライン アクセスはありません。
- アプリが起動するたびに、以前のデータがすべて再送信されるため、帯域幅が浪費されます。
スナップショット データは Javascript オブジェクトとしてメモリ内に存在するため、JSON としてシリアル化して localStorage に保存するのは非常に簡単なはずです。そのため、次にアプリを起動したときに、オンラインであるかどうかにかかわらず、正確なアプリケーションの状態を読み込むことができます。しかし、firebase.js のコードは縮小されていてわかりにくいので、どこを見ればよいかわかりません。
PouchDBは、CouchDB バックエンドでこれをうまく処理します。(しかし、Firebase の素早い応答時間とシンプルさが欠けています。)
だから私の質問は:
1. スナップショットを localStorage に保存するには、どのデータをシリアル化する必要がありますか? アプリの起動時にこれを Firebase にロードするにはどうすればよいですか?
2. firebase.js の縮小されていない元の開発ソース コードはどこからダウンロードできますか?
(ちなみに、Firebase が競合他社を圧倒するのに役立つ 2 つの機能は、オフライン キャッシングとマップ リデュースです。)