0

ここでいくつかの概念の問題がありました。

各テーブルの検索ウィンドウを作成する必要がありました。このウィンドウは、コンボボックスの内容(検索するフィールドの名前)とグリッド列(結果)のみが異なります。

extjsの最良のアプローチは何ですか:

  1. ベースウィンドウを作成し、子クラスでコンボ列とグリッド列を定義します。
  2. ウィンドウごとに異なるクラスを作成しますか?

特に私は最初のオプションを好みますが、子クラスからこのプロパティを構成することに固執しています。

4

1 に答える 1

0

ここでの答えは、おそらく、再利用可能なコードの量とカスタマイズする必要があるコードの量によって異なります。

そこに共通の再利用可能なコードの 70 ~ 80% を配置できれば、他のすべてが拡張する基本クラスを構築できます。次に、特定の各クラスがこの基本クラスを拡張し、残りをカスタマイズします。ウィンドウを構築するために initComponent から呼び出される一連の関数を作成することで、カスタマイズの容易さを向上させることができます。次に、各サブクラスは、ベースと区別するために必要な関数だけを上書きします。

再利用可能なコードの量が 90% 以上のようにはるかに多い場合は、次のように、単一のクラスを記述し、インスタンス化中に個々の構成オーバーライドを渡す方がよい場合があります。

Ext.create('MySearchView', { title:'My Custom title', fieldSelector:myComboConfig});

また、サンプル コードを参照すると、再利用の興味深いケースが見つかるかもしれません。

于 2012-10-30T18:06:47.540 に答える