构建ExtJS Grid的插件

mik*_*eck 6 extjs extjs4

我想构建一个插件,它将在Ext.Grid上运行并允许对它进行一些操作(添加新行,在某些事件上更新它们等)我的插件应该扩展哪种类型的组件以获得最佳结果?

Abd*_*oof 15

ExtJS Grid提供了两种添加功能的方法:

  1. 插件
  2. 特征

插件:插件为组件提供自定义功能.ExtJS 4引入了这个系统,开发人员可以将自定义功能注入组件.它使用pluginsgrid类的属性指定为对象或对象数组.

基本上,插件是一个ExtJS类,通常不需要扩展任何ExtJS类.插件类的强制部分是,它应该有一个init插件系统调用来初始化插件的方法.此方法应采用参数(将作为对网格的引用).init方法应该配置监听事件的所有自定义事件(如果有)或挂钩方法.

这是一个示例框架代码:

Ext.define('Ext.ux.grid.MyPlugin', {
    alias: 'plugin.ux.muplugin',
    init: function(grid) {
        // init events and add listeners...
    },

    customFunction: function(par1, par2) {

       // some code...
    },

}); 
Run Code Online (Sandbox Code Playgroud)

功能:功能是一种插件,仅适用于网格面板.功能的基类是Ext.grid.feature.Feature.如果您计划创建一个功能,则需要扩展此类.

这是一个示例:

Ext.define('Ext.grid.feature.MyFeature', {    
    extend: 'Ext.grid.feature.Feature',

    alias: 'feature.myfeature',

    // other methods..

}); 
Run Code Online (Sandbox Code Playgroud)

这应该可以帮助您入门.