2011-07-25 6 views
7

RenchサービスからRESTプロキシを使用して店舗にデータを読み込むSencha Touch Appがあります。このストアのロードイベントは、レコードをローカルストアストアにコピーします。これは、アプリケーションがオフラインモードで動作する必要があるためです。私はlocalstorageのレコードに加えられた変更をRESTサービスに書き戻そうとしていますが、ローカルストアストアとRESTプロキシを使用するストアを同期する方法を把握していません。何か案は?Sencha Touchの店舗間の同期方法

この例では、http://www.sencha.com/learn/taking-sencha-touch-apps-offline/の例を示しましたが、オフラインデータの読み取り専用シナリオについてのみ説明します。

+0

これを行う方法を見つけましたか? – Konza

答えて

0

あなたはコピーが(それが読み込まれたときにずっとあなたのようなあなたのonlineStoreからofflineStoreに新しいアイテムをコピーしている)あなたのonlineStoreに切り替わるあなたlocalstorageストアに保存した場合に類似した何かを実装する必要があります。

0

@Lyle Prattは、「オフライン」ストアから「オンライン」ストアにコピーする機能については正しいです。しかし、さらに拡張するために、オフラインストア内にオフラインデータを保存またはコピーする機能を作成します。

Ext.define('MyProject.store.OfflineMessage', { 
    config: { 
     model: 'MyProject.model.Message' //this should be the same with your online store 

    }, 

    sync: function(){ 
     var me = this, 
      onlineMessageStore = Ext.getStore('OnlineMessage'), //you can get your current store or just create a new one 
      items = me.getData().items; 

     onlineMessageStore.setData(items); 
     onlineMessageStore.sync(); 

    } 
}); 

一方、オフラインストアにオンラインデータを保存するオンラインストアと同じ機能を作成することもできます。

関連する問題