ストアなしで ExtJS のリーダー、ライター、リクエストなどのクラスの力を利用する方法はありますか? 一般的な Ajax リクエストのように? アプリケーションのサーバー応答で使用する「データ構造」を受け入れ、グローバル スケールで関数を実行できるリーダーを定義する機能が必要です。たとえば、サーバーでエラーが発生した場合に、リーダーが解釈してエラー メッセージを含むウィンドウ ダイアログを作成する特定のアプリケーション コードが存在する可能性があります。
質問する
513 次
1 に答える
1
Reader と Writer は実際には Proxies の構成であり、Ajax バージョンがあります。プロキシを使用するためにストアを用意する必要はありません。ストアがなくても「手動で」プロキシを使用できます。
ストアは、モデルをサーバー/ローカル ストレージからロードされた一連のレコードとリンクするために使用されます。また、グリッド、ツリー、データビューなどでも頻繁に使用されます。
質問の 2 番目の部分については、選択したサーバー通信のタイプ (Ajax/Rest/Direct) に関係なく、サーバーから例外をキャッチする方法があります。一部の人にとっては、他の人よりも少しトリッキーです ( Ajax で考えられる問題については、このスレッドを参照してください)。ただし、ExtJS ライブラリ コードを少し詳しく調べれば、これらはすべてかなり簡単に解決できます。私の場合、私は直接を使用しており、次のようなもの( application 内launch()
)はほとんどすべてのサーバーの問題をキャッチします(サーバーが例外をスローすることを確認する必要があるだけです):
Ext.direct.Manager.on('exception', function(e, provide, eOpts) {
Ext.MessageBox.alert('Server Error', e.message);
});
AJAX で同様のことを行うには、次のものが必要です。
Ext.Ajax.on('requestcomplete', function( iConn, iResponse, iOptions, ieOpts ){
// do something with iResponse here
});
于 2012-08-05T21:41:13.293 に答える