本文所有思想表达均为个人意见,如有疑义请多批评,如有雷同不甚荣幸。

转载请注明出处:Nutk'Z http://www.cnblogs.com/nutkz/p/3448801.html

在用到ExtJS的扩展控件时经常会想到,这个控件有哪些属性,有哪些方法以及事件。
一般都是把前人用过的,或者是网上down的拿过来改改,如果前人没有使用这个控件的某个属性,而你又需要时就会发现,这怎么连这个功能都没有!!
其实并不一定没有,也可能是设定成了默认属性。
 
那么接下来就看原代码
 
一般控件会采用继承方式(个人认为是继承关系),看ExtJS的源代码也是这么写的
Ext.XXX = Ext.extend(父类, {配置项})
这可以说明你使用的这个控件他继承的来源,也就是他与谁有密不可分的关系
 
然后往下看会发现,在他的配置项里也是存在类似于
XXX: xxx
的属性配置,前者(XXX)是他的配置项名称(Name),后者(xxx)是他的配置内容(Value)
这个在使用该控件的时候是可以重新配置修改的,有时候这里可能隐藏着你需要的属性
 
当然还会发现,有一些是这样写的
XXX: function([params]){}
这样的个人觉得应该是说他具有哪些方法,当然事件应该也会这么写吧。但是因ExtJS已经封装了很多事件,所以在一些扩展控件里就看不到对于事件的定义了。
 
当然我们也可以在ExtJS的源代码中看到事件的定义
onClick : function(e){ this.processEvent('click', e); }
onDblClick : function(e){ this.processEvent('dblclick', e); }
processEvent : function(name, e){ this.view.processEvent(name, e); }
好像很简单吧
 
在然后就可能会看到有一些类似
initComponent: function(){}
初始化之类的函数,initComponent可能是继承来的一个虚方法需要重构的吧(个人觉得是这样),当然也不止这一个方法,但是个人感觉initComponent是一个入口方法吧
 
好了,按照这种思路再剩下的就可以顺藤摸瓜了。
其实这么看来ExtJS并不难,他需要的可能就是最基本JavaScript的知识,当然这方面本人还是很缺乏的。
期待接下来的学习成果。。。

Ext自定义控件 - 自学ExtJS的更多相关文章

  1. ExtJS学习-----------Ext.Object,ExtJS对javascript中的Object的扩展

    关于ExtJS对javascript中的Object的扩展.能够參考其帮助文档,文档下载地址:http://download.csdn.net/detail/z1137730824/7748893 以 ...

  2. ext.net与extjs的关系

    一.在客户端,ext.net中可以使用extjs的语法. 如发送ajax请求, Ext.Ajax.request({            url: 'Common/getNode',         ...

  3. Ext.tree.Panel Extjs 在表格中添加树结构,并实现节点移动功能

    最近在用Extjs 做后台管理系统,真的非常好用.总结的东西分享一下. 先展示一下效果图 好了,开始吧! 首先说一下我的创建结构: 一.构造内容 这个函数中包括store的创建,treePanel的创 ...

  4. ExtJS学习-----------Ext.String,ExtJS对javascript中的String的扩展

    关于ExtJS对javascript中的String的扩展,能够參考其帮助文档,文档下载地址:http://download.csdn.net/detail/z1137730824/7748893 以 ...

  5. ExtJS学习-----------Ext.Array,ExtJS对javascript中的Array的扩展

    关于ExtJS对javascript中的Array的扩展.能够參考其帮助文档,文档下载地址:http://download.csdn.net/detail/z1137730824/7748893 因为 ...

  6. [Ext JS 4] Extjs 它 initComponent 和 constructor差分

    initComponent 和 constructor是什么 Extjs 提供的组件还是挺丰富的, 可是有时候需求更丰富. 当Extjs 原生的组件无法实现我们的要求的时候, 就须要扩展Extjs 的 ...

  7. EXT JS认识EXTJS,第一个EXTJS例子

    大部分内容转载自:http://blog.csdn.net/wanghuan203/article/details/8011112 和http://www.cnblogs.com/willick/p/ ...

  8. ExtJS学习-----------Ext.Number,ExtJS对javascript中的Number的扩展

    关于ExtJS对javascript中的Number的扩展,能够參考其帮助文档,文档下载地址:http://download.csdn.net/detail/z1137730824/7748893 以 ...

  9. ExtJS学习-----------Ext.Array,ExtJS对javascript中的Array的扩展(实例)

    (1)clean var arr = [1,2,null,3,'']; alert(Ext.Array.clean(arr)); //clean的对象:(value === null) || (val ...

随机推荐

  1. class 命名规范

    本文是从简书复制的, markdown语法可能有些出入, 想看"正版"和更多内容请关注 简书: 小贤笔记 注: 文章摘自 penggelies07- 简书, super晴天 - C ...

  2. 微信小程序——代码构成

    通过上一章讲解,我们了解到如何初始化一个小程序项目,这里是官方给到demo地址,通过demo来看教程更方便于我们理解项目架构. 由四种文件构成: .json 后缀的 JSON 配置文件 .wxml 后 ...

  3. Dapper 批量操作sql

    static void Main(string[] args) { private static readonly string sqlconnection =""; //遍历循环 ...

  4. python nose测试

    前提: python3 安装nose 结果: nose目录下有子目录tests和mybag,在mybag下新建my_age.py, 内部有Students类,age属性. tests目录下写Sutde ...

  5. dctcp example-ns2

    set N 8 set B 250 set K 65 set RTT 0.0001 set simulationTime 1.0 set startMeasurementTime 1 set stop ...

  6. 【Leetcode】【Medium】Rotate List

    Given a list, rotate the list to the right by k places, where k is non-negative. For example:Given 1 ...

  7. 根据ip抓 包

    tcpdump -i any -s 0  host 101.81.134.53 -c 1000  -w ./zhj.cap

  8. QT的编译原理

    https://www.cnblogs.com/findumars/p/4948896.html

  9. Nginx配置虚拟机,url重写,防盗链

    配置目录: ·     虚拟主机 ·     PHP支持 ·     URL重写 ·     防止盗链 ·     持续更新… 一.虚拟主机 1.创建 文件格式:{域名}.conf 具体如下: $ s ...

  10. markdown中设置、调整图片尺寸

    使用百分比描述尺寸 <img src="https://img2018.cnblogs.com/blog/1122471/201902/1122471-2019022218575673 ...