`

Ext.extend的简单使用

EXT 
阅读更多

有些时候,Ext提供的组件已经不能满足我们的需要,这时我们就需要在Ext组件的基础上进行扩展。以达到代码复用

接下来就已扩展Ext.form.ComboBox为例写一个简单的例子:

//设置命名空间
Ext.namespace('un');

//构造函数
un.ComboBox=function(config){
	/**
	 * 在这里写我们的私有代码
	 */
	if(config.store===undefined){
		config.store=new Ext.data.SimpleStore({
			data:[["1",'测试1'],[2,"测试2"]],
			fields:["id","name"]
		});
		config.displayField="name";
		config.valueField="id";
		config.mode="local";
	}
	
	Ext.apply(this, config);//该句很重要
	un.ComboBox.superclass.constructor.call(this);
}

//让组件un.ComboBox继承Ext.form.ComboBox
Ext.extend(un.ComboBox,Ext.form.ComboBox,{
	initComponent : function(){
		/**
		 * 写自己的私有实现
		 */
        un.ComboBox.superclass.initComponent.call(this);
    },

    initEvents : function(){
		/**
		 * 写自己的私有实现
		 */
        un.ComboBox.superclass.initEvents.call(this);
    },
	
	onRender:function(ct, position){
		/**
		 * 写自己的私有实现
		 */
		un.ComboBox.superclass.onRender.call(this,ct,position);
	}
});

//注册类型
Ext.reg('myCombo', un.ComboBox);

 

分享到:
评论

相关推荐

    Jquery实现$.fn.extend和$.extend函数

    使用这个模拟库,你可以像使用原生jQuery一样调用 `$.fn.extend` 和 `$.extend`: ```javascript _$_().fn.extend({myMethod: function() {console.log('My custom method!')}}) _$_().myMethod(); // 输出 "My ...

    Ext Js权威指南(.zip.001

    7.2.10 使用浏览器存储的代理:ext.data.webstorageproxy、ext.data. sessionstorageproxy和ext.data.proxy.localstorage / 314 7.3 读取和格式化数据 / 315 7.3.1 概述 / 315 7.3.2 数据的转换过程:ext.data....

    ExtJs.doc 扩展介绍 英文

    如果你想要扩展 `Ext.Component` 或其子类,你可以使用 `Ext.extend()`,但在 Ext2.x 及之后的版本,你通常不需要定义自己的构造函数,而是重写 `initComponent()` 方法来初始化你的组件。 创建预配置类是扩展组件...

    extjs帮助文档

    - `Ext.extend(subClass, superClass[, overrides])`:创建一个新的子类,继承自指定的父类。 #### 二、Array类(第4页) - **概述**:Array类提供了处理JavaScript数组的增强功能。 - **常用方法**: - `Ext....

    Ext2 核心 API 中文详解.doc

    tx.data.ListStore = Ext.extend(Ext.data.Store, { constructor: function(){ // superclass call tx.data.ListStore.superclass.constructor.call(this, { sortInfo:{field: 'listName', direction: "ASC"}, ...

    4.0Ext 类系统

    在 ExtJS 4.x 中,类的创建和继承得到了改进,不再局限于简单的 `Ext.extend`。现在,可以更灵活地处理配置、静态属性和混入(Mixins): 1. **旧式继承** 传统的 `Ext.extend` 方法用于创建新类,如 `var MyWindow...

    精通JS脚本之ExtJS框架.part1.rar

    14.1 利用Ext.extend实现继承 14.2 与ExtJS扩展相关的预备知识 14.2.1 定义命名空间 14.2.2 使用xtype 14.3 用户扩展和插件 14.3.1 编写自定义用户扩展 14.3.2 常用插件UploadDialog 14.3.3 常用插件...

    extjs3.4如何创建对象

    EXTJS中的所有对象都是由`Ext.extend()`函数或`Ext.apply()`函数来创建的。例如,如果你要创建一个简单的Panel对象,可以这样做: ```javascript var myPanel = Ext.extend(Ext.Panel, { title: '我的面板', ...

    Ext树创建说明.rar

    以下是一个简单的创建Ext树的示例代码: ```javascript Ext.application({ name: 'MyApp', launch: function () { var store = Ext.create('Ext.data.TreeStore', { model: 'NodeModel', root: { text: '根...

    Ext与后台服务器的交互操作

    Mis.Ext.CrudPanel = Ext.extend(Ext.Panel, { // ... 具体实现细节省略 }); ``` 要使用这个CRUD面板,需要进一步继承并实现特定的需求,比如文中给出的例子是创建一个污水厂管理面板: ```javascript ...

    ext入门学习.pdf

    类的创建和继承则可以通过JavaScript的原型链实现,或者使用ExtJS提供的`Ext.extend`方法。此外,`Ext.apply`可以用于向对象动态添加属性和方法。 获取界面上的元素是ExtJS中的重要操作,这主要通过Ext.Element实现...

    javascript 写类方式之八

    8、Ext.js的写类方式 这里用的是Ext core3.0,Ext中用Ext.extend来定义一个类(当然它更多用来扩展一个类),Ext整个框架各种控件如Panel,MessageBox等都是用Ext.extend方法来扩展。这里仅仅用它来定义一个最简单的...

    精通JS脚本之ExtJS框架.part2.rar

    14.1 利用Ext.extend实现继承 14.2 与ExtJS扩展相关的预备知识 14.2.1 定义命名空间 14.2.2 使用xtype 14.3 用户扩展和插件 14.3.1 编写自定义用户扩展 14.3.2 常用插件UploadDialog 14.3.3 常用插件...

    ext入门学习.docx

    2. **类定义**:可以使用传统的JavaScript构造函数方式定义类,也可以使用Ext的`Ext.extend`方法实现继承。 3. **对象扩展**:`Ext.apply`可以用来向对象动态添加属性和方法。 **五、元素选择与获取** 1. **Ext....

    Ext2 核心 API 中文详解

    tx.data.ListStore = Ext.extend(Ext.data.Store, { constructor: function() { // superclass call tx.data.ListStore.superclass.constructor.call(this, { sortInfo: { field: 'listName', direction: "ASC...

    ext2.0

    它使用 `Ext.extend()` 方法来实现类的继承,这样就可以复用和扩展已有的组件功能。 在 CRUD 面板的实现中,可以看到 `edit()`, `save()`, 和 `removeData()` 方法,这些都是针对数据操作的关键函数。例如,`edit()...

    EXT扩展Htmleditor,在工具栏中添加插入图片按钮,可选择图片插入到编辑器中(也可添加其他功能按钮)

    Ext.extend(MyPlugins.ImageInsert, Ext.util.Observable, { // 其他插件相关方法和事件处理 }); ``` 2. 创建按钮:在插件中定义一个方法来创建按钮,包括按钮的图标、文字、监听器等属性。 ```javascript create...

    在VS下利用Ext4.2的TreePanel的简单demo

    通过以上步骤,我们就能在VS环境下搭建一个使用Ext4.2 TreePanel的简单应用,并与数据库进行交互。这只是一个基础的框架,实际开发中可能需要根据业务需求进行更多的定制和优化,例如增加拖放功能、节点展开动画、...

Global site tag (gtag.js) - Google Analytics