2016-05-25 15 views
0

CRMからデータを取得し、オフラインで使用するためにHTMLローカルストレージに保存するWebアプリケーション(JavaScriptを使用した純粋なクライアント側の実装)があります。しかし、ローカル記憶装置の記憶容量は非常に低い。したがって、indexedDBを使用すると考えました。しかし、アプリケーションは、データを同期して格納および取得する同期方式で実装されており、これは必須です。アプリケーションは非常に複雑で、データにアクセスするサービスクラスが非常に多くあります。したがって、アプリケーション全体を非同期で書き直すと、退屈な作業になります。 indexedDBに同期してアクセスする方法はありますか?IndexDB同期および非同期の問題

私はherehereというソリューションを試しました。 2番目のリンクで述べたwhileループメソッドを試しました。しかし、シングルスレッド環境では動作しません。したがって、私はWebワーカーと一緒にやろうとしましたが、うまくいきませんでした。私は、ES6ジェネレータを使ってデータに同期してアクセスしました。 私はsynchronizejsを知っています。しかし残念ながら、このアプリケーションは純粋なクライアントサイドアプリケーションなので、ノードモジュールは使用できません。 stratifiedjsを使用することはできません。なぜなら、私は外部のjavascriptからstratifiedjs関数を呼び出すことができないからです。

アプリケーションを非同期で書き直すことなくこの問題を解決する方法はありますか?

答えて

0

indexedDBを使用する予定の場合は、非同期呼び出しを使用する必要があります。

+0

妥当な容量(ほぼ250MB)を持つ同期クライアント側のデータベースはありますか? – JohnDuo

+0

Hmm。たぶんあなたはファイルシステムapiを試して、あなた自身のロールをとることができます – Josh

関連する問題