Ext.Gridで動作し、いくつかの操作を許可するプラグインを作成したい(新しい行の追加、いくつかのイベントでの更新など)プラグインを拡張する必要があるコンポーネントのタイプ最高の結果を達成するために?ExtJS Gridのビルドプラグ
答えて
ExtJSのグリッド機能を追加する2つの方法が用意されています
- プラグイン
- 特長
プラグイン:プラグインコンポーネントのカスタム機能を提供。 ExtJS 4では、このシステムが導入され、開発者はカスタム機能をコンポーネントに注入できます。グリッドクラスのplugins
属性を使用して、オブジェクトまたはオブジェクトの配列として指定されます。
基本的に、プラグインは通常、ExtJSクラスを拡張する必要のないExtJSクラスです。プラグインクラスの必須部分は、プラグインシステムがプラグインを初期化するために呼び出すinit
メソッドを持つべきであるということです。このメソッドはパラメータ(グリッドへの参照になります)を取る必要があります。 initメソッドは、すべてのカスタムイベント(存在する場合)を設定するか、イベントをlistenするメソッドをフックアップすることになっています。ここ
サンプルスケルトンコードである:
Ext.define('Ext.ux.grid.MyPlugin', {
alias: 'plugin.ux.muplugin',
init: function(grid) {
// init events and add listeners...
},
customFunction: function(par1, par2) {
// some code...
},
});
特徴:機能がグリッドパネルでのみ利用可能であるプラグインのタイプです。フィーチャの基本クラスはExt.grid.feature.Feature
です。フィーチャの作成を計画している場合は、このクラスを拡張する必要があります。ここで
はサンプルです:
Ext.define('Ext.grid.feature.MyFeature', {
extend: 'Ext.grid.feature.Feature',
alias: 'feature.myfeature',
// other methods..
});
これは、あなたが始めるのに役立つはずです。
src/grid/plugin/*
に特定のプラグインを調べても、Ext.form.field.*
のような基本クラスは特に拡張されません。ですから、これはあなたが達成する必要のあるものと関連している必要があります。例えば
HeaderReorder
とHeaderResizer
だけで、共通のイベント処理を実現するようExt.util.Observable
を拡張する一方で、RowEditing
とCellEditing
の両方が、グリッドのストアを編集する能力を持っている彼らの基本クラスとしてEditing
を拡張します。
Extの任意のクラスで実装されていない機能がない場合は、Ext.util.Observable
を拡張することをおすすめします。そのため、少なくともいくつかのイベントを起動することができます。
プラグインは、Gridオブジェクトに追加された機能のセットです。私が間違っているなら、私を修正してください。)
Senchaのドキュメントには、@Askyの回答ごとにExt.AbstractPluginから継承する必要があります。感謝します。http://docs.sencha.com/extjs/4.2.1/#!/api/Ext.AbstractPlugin – mwoodman
プラグインは、コンポーネント間で共有される再利用可能な機能です。すべてのEXTJSプラグインは、クラスExt.AbstractPluginを継承する必要があります。
- 1. extjs grid ListFilterスクロールハンドル(ListFilterオーバーフロー)
- 2. ExtJS - GridのDOMノードの配列を取得するには、highlight()?
- 3. データ表示後のExtJS :: Gridのイベントですか?
- 4. JDKGridのようなExtJS Gridツールバーの検索方法
- 5. ExtJs Grid with JsonStoreのデータがロードされていません
- 6. ExtJS Gridは.insert()に2行を追加します。
- 7. ExtJs Gridを大規模プロジェクトに展開するための最良の方法
- 8. Devexpress Gridのドロップダウンフィルタ
- 9. EXTJSグリッドレンダリング
- 10. GRIDが正しくここストア
- 11. extjs:ロードマスクグリッド
- 12. ExtJSグリッドツールバー
- 13. grid(Div)の問題
- 14. Selenium Grid:ハブのキューサイズ?
- 15. ExtJs loading data
- 16. Struts2 Jquery Grid
- 17. Css "vertical" Grid
- 18. javascript grid help
- 19. Newtonsoft.Json.JsonConvert.DeserializeXmlNode to Grid
- 20. WPF "hex grid"コンポーネント
- 21. WPF Charting + Gridヘルプ
- 22. ag-grid apiサポートカラムフィルタリングドロップダウン
- 23. ASP.Net MVC 3 Grid
- 24. Obout Grid Control
- 25. Selenium Grid Hubシャットダウンコマンド
- 26. Android MapActivity - Grid
- 27. HTML5 CSS3 Grid Boilerplates
- 28. Java Swing Huge Grid
- 29. MVC Telerik Grid
- 30. ExtJS PagingToolbar trouble
ありがとうございます。それが私の必要なものです。 –
"AbstractPluginクラスは、ユーザーが実装したプラグインが継承する基本クラスです。このクラスは、Componentsによって使用されるプラグインの必須APIを定義します。" - http://docs.sencha.com/extjs/4.2.1 /#!/api/Ext.AbstractPlugin – mwoodman
プラグインファイルを実際に作成する場所と、それをグリッドに含める方法を教えてもらえますか? – Snowman