如何在ExtJS4中扩展我们自己的类



我已经在ExtJS 4中创建了这个类,现在我想在另一个类中扩展它。我使用extend属性来扩展类。但是我不能延长课程。我想使用require来包含类文件吗。但我把这两个文件都放在同一个目录中。

为ExtJS定义源路径以定位源文件。

Ext.Loader.setConfig({
            enabled: true,
            paths: {
                '[your namespace prefix here]': '[physical path]'
            }
        });

然后在子类中定义Ext.requirerequires部分以启用自动路径解析。阅读此链接了解更多信息。

示例

基类:位于文件夹root/view/common/Picker.js 中的文件

Ext.define('RL.view.common.Picker', {
    extend: "Ext.form.field.Picker",
...
}

子类:位于文件夹root/view/selection/DriverTreeCombo.js 中的文件

Ext.define('RL.view.selection.DriverTreeCombo', {
        extend: "RL.view.common.Picker",
        requires: ['Ext.tree.Panel', 'RL.view.common.TreeBase'],
...
}

我的命名空间是RL.xxx.xxx,RL应该是root文件夹。现在我可以将Loader配置定义为以下

Ext.Loader.setConfig({
            enabled: true,
            paths: {
                'RL': '/root'                    
            }
        })

应在"Ext.onReady(…)"函数调用之前设置加载器配置。浏览ExtJS包中的examples文件夹可以帮助您了解如何做到这一点。

进一步阅读:

  • 阶级制度
  • 动态加载和新的类系统

相关内容

最新更新