ホームページ  >  記事  >  ウェブフロントエンド  >  Extjs4 ストア上の一部の操作 (ロード/コールバック/追加)_extjs

Extjs4 ストア上の一部の操作 (ロード/コールバック/追加)_extjs

WBOY
WBOYオリジナル
2016-05-16 17:36:141334ブラウズ
1. 読み込みとコールバックに関する問題
ExtJs ストアは通常、読み込み時に遅延し、読み込みが完了するまでデータが表示されません。プロンプトメッセージを追加する必要があります。
しかし、Store には waitMsg 属性がありません。

解決策:
1. ストアにリスナーを追加し、beforeload イベントをリッスンし、ロード前にプロンプ​​ト ボックスをポップアップ表示し、ロードが完了したらプロンプト ボックスを閉じます。
2. コールバック関数はロードが完了した後に実行されるため、プロンプト ボックスを閉じることはそれによって完了します。
3. ストアの reload メソッドに必ずコールバック関数を追加してください。プロンプト ボックスは閉じられました
例のメイン コードは次のとおりです:
コードをコピーします コードは次のとおりです:

varmsgTip; // 使用前に定義し、グローバル変数として定義する必要があります。
var reportStore=new Ext.data.Store({
proxy:reportProxy,
reader: reportReader,
listeners:{
beforeload:function(){
msgTip = Ext .MessageBox.show({
title: 'プロンプト',
width : 250,
msg: 'ページレポート統計を更新中です。お待​​ちください...'
})
}
}
}); , options, success){
msgTip.hide(); // 読み込みが完了しました。プロンプト ボックスを閉じます
}
}); 注: ページを更新するために reload が呼び出された場合は、再読み込みする必要があります。プロンプト ボックスを閉じるコールバック関数も追加します。
reportStore.reload({
callback : function(records, options, success){
msgTip.hide(); // 読み込みが完了したので、プロンプト ボックスを閉じます
}
});
----------以下はその他のパラメータです-----
store.load({
params:{start:0, limit:20}, //Parameters
// callback はロード完了時に実行されるコールバック関数です。これには 3 つのパラメータが含まれます: records パラメータは取得されたデータを表し、
// options はロードの実行時に渡されるパラメータを表します。 ()、success は読み込みが成功したかどうかを表します。
callback: function(records, options, success){
Ext.Msg.alert('info', 'Loading completed');
scope: store, //スコープはコールバック関数の実行時のスコープを指定するために使用されます。
add: false // Add が true の場合、load() で取得したデータが最後に追加されます。元のストア データ。
// それ以外の場合は、以前のデータが最初にクリアされ、その後、取得されたデータがストアに追加されます。



2. あるストアから特定の条件を満たすレコードを別のストアに追加します



コードをコピー
コードは次のとおりです。 var MyDocnumStore_Load = function(store){ //varindex = 0; store.each(function(record) { if(record.data.PlanCarNo ! = '' ) { //column_name を列名に置き換え、「1」を値に置き換えます
if (record.data.Docnum != _rec.get( 'Docnum')){
var _TmpStr = Record. data.UseDate '----->' Record.data.PlanCarNo;
myDocnumStore.add({
'UpDocnum':record.data .Docnum
,'DocnumDesc':_TmpStr
,'UseDate':record.data.UseDate
,'PlanCarNo':record.data.PlanCarNo
});
}
}
})
myDocnumStore.sort(' UseDate', 'ASC');
MyDocnumStore_Load(mystore); // 相乗りリストをロードします。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。