私は 'Movie'モデルを持ち、Ext.data.Storeにデータを保持しています。ムービーは、gridPanelで表示されます。検索パラメータを与えた後、ボタンストアをクリックしてリロードしています。ExtJS - localStorage
今、私はlocalStorageを使用しようとしています。むしろリスナーの機能の中にデータを保存する必要があります:
listeners: {
'click': function() {
movieDataStore.sync();
var textValue = Ext.getCmp("searchFieldId").getValue();
movieDataStore.load({
params : {
start : 0,
limit : 25,
t : textValue
}
});
}
}
どうすればいいですか?
のUPDATE V1
私はこのようなキャッシュ変数を初期化する必要があり、私はExt.state.LocalStorageProviderを使用する場合:
var movieLocalCacheStore = Ext.state.LocalStorageProvider.create();
var movieGridPanel = Ext.create('Ext.grid.Panel', {
store : movieDataStore,
tbar : [ 'Search', {
xtype : 'textfield',
name : 'searchField',
id: 'searchFieldId',
emptyText : 'Put movie title here',
hideLabel : true,
width : 200
}, {
xtype : 'button',
text : 'Search',
tooltip : 'Search for movie',
listeners: {
'click': function() {
var textValue = Ext.getCmp("searchFieldId").getValue();
movieDataStore.load({
params : {
start : 0,
limit : 25,
t : textValue
}
});
movieDataStore.sync();
movieGridPanel.getView().refresh();
//localStorage.setItem(textValue, movieDataStore.getAt(0));
movieLocalCacheStore.set(textValue, movieDataStore.getAt(0));
}
}
} ]
});
?
私は 'MovieModel'というモデルを持っています。それはオブジェクトを取得する正しい方法はmovieDataStore.getAt(0)
ですか?
キャッシュされた検索結果(ムービーデータストア/ movieGridPanelに読み込み)があるかどうかを確認するにはどうすればよいですか?
おかげで、@Abdel Olakara、について説明するために。私は 'LocalStorageProvider'を使って私の更新されたソースコードを書きました。 – bontade