博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Extjs6 怎么重写框架的类
阅读量:5262 次
发布时间:2019-06-14

本文共 850 字,大约阅读时间需要 2 分钟。

创建一个覆写(override)类的推荐方法如下:

Ext.define('MyApp.overrides.panel.Panel', {    override: 'Ext.panel.Panel',    close: function() {        console.log('My Change to Close');        this.callParent();    },    helloWorld: function(){       console.log('Hello World');    }});

1) 首先, 为你的应用程序的 overrides 目录中的 override 类定义一个合适的命名空间

2) 添加 “override” 配置, 其值是你要覆写的类名, 在这个例子中,我们要覆写 Ext.panel.Panel.

3) 添加你准备覆写的函数. 你需要确认保留了所有相关的代码片段. 在这个例子中,我只是修改了 close 函数, 添加的代码是 console.log(). 如果你创建一个 panel 然后调用 panel.close(), 你会收到一个显示 “My Change to Close” 的控制台信息.

注意: 在你覆写的方法中, 你需要执行 this.callParent() 代码来调用目标类中的原方法. 如果要忽略这个方法, 转而去调用父类的相应实现(比如避免目标类中方法的bug), 你可以调用 this.callSuper() 来代替.

4) 添加一个新函数. 也许你会想像, Ext.panel.Panel 没有 helloWorld 方法. 然而, 我刚刚通过覆写增加了. 现在, 创建一个 panel ,并且执行 panel.helloWorld() 就会显示出一条 “Hello World” 的控制台消息.

转载于:https://www.cnblogs.com/status404/p/7641823.html

你可能感兴趣的文章
11、容器操作
查看>>
部署 Helm - 每天5分钟玩转 Docker 容器技术(162)
查看>>
Linux服务器下对Oracle作Rman备份
查看>>
JDK源代码学习-ArrayList、LinkedList、HashMap
查看>>
亲历腾讯WEB前端开发三轮面试经历及面试题
查看>>
SugarCRM 主页模板中去掉添加模板的按钮
查看>>
OC中Foundation框架的基本对象之数字对象
查看>>
Jzoj2308 聚会
查看>>
Git从零开始(三)
查看>>
左边固定,右边自适应(解决方案)
查看>>
从C++到Java,10年技术生涯的几点思考 转
查看>>
SQL Server 自定义函数
查看>>
PHP实现http与https转化
查看>>
Hive通过mysql元数据表删除分区
查看>>
[Functional Programming] Draw Items from One JavaScript Array to Another using a Pair ADT
查看>>
[Angular2 Form] Group Inputs in Angular 2 Forms with ngModelGroup
查看>>
[RxJS] RefCount: automatically starting and stopping an execution
查看>>
DDA与Bresenham画线算法
查看>>
访问者模式
查看>>
LVS四种类型和十种算法
查看>>