文档章节

在Extjs中自定义组件的时候如果正确的选择父类

大叔不坏
 大叔不坏
发布于 2016/06/19 14:37
字数 320
阅读 8
收藏 0

在extjs中,很容易犯一个错误,就是不管自己需要的是什么都extends Ext.panel.Panel,这样的做法很多时候是不合适的,那么该如何来选择合适的继承类呢?

  1. 继承Ext.Component: 如果自定义的组件不会包含任何其他的组件,同时也只是嵌入html代码并没有header、title等属性代码的时候,具体代码如下:
  Ext.define('Ext.ux.Image', {
      extend: 'Ext.Component', // subclass Ext.Component
      alias: 'widget.managedimage', // this component will have an xtype of 'managedimage'
      autoEl: {
          tag: 'img',
          src: Ext.BLANK_IMAGE_URL,
          cls: 'my-managed-image'
      },
      // Add custom processing to the onRender phase.
      // Add a 'load' listener to the element.
      onRender: function() {
          this.autoEl = Ext.apply({}, this.initialConfig, this.autoEl);
          this.callParent(arguments);
          this.el.on('load', this.onLoad, this);
      },
      onLoad: function() {
          this.fireEvent('load', this);
      },
      setSrc: function(src) {
          if (this.rendered) {
              this.el.dom.src = src;
          } else {
              this.src = src;
          }
      },
      getSrc: function(src) {
          return this.el.dom.src || this.src;
      }
   });
  1. 继承Container,如果创建的组件只是为了做为一个容器去包涵其他的组件,那么这个时候可以选择Ext.container.Container
  2. 继承Panel,这是一个面板又非常多多扩展属性,所以如果需要创建一个比较复杂的组件的时候可以选择Ext.panel.Panel

© 著作权归作者所有

共有 人打赏支持
上一篇: Extjs6最佳实现
下一篇: SenchaCMD使用
大叔不坏
粉丝 1
博文 4
码字总数 648
作品 0
普陀
前端工程师
私信 提问
Dijit、ExtJS、jQuery UI 异同浅析

简介: 当今,各类 JavaScript 框架在前端开发中已经相当普及。Dojo、Ext jQuery 等主流 JavaScript 框架不仅提供了一系列核心 API 来屏蔽浏览器差异,简化 DOM 操作、增强 JavaScript 原生 ...

索隆
2012/02/21
0
0
Extjs GridPanel用法详解

创建GridPanel 要使用GridPanel,首先要定义Store,而在创建Store的时候必须要有Model,因此我们首先来定义Model: //1.定义ModelExt.define("MyApp.model.User", { }); 然后创建Store: //...

鱼煎
2017/11/02
0
0
Extjs甘特图性能优化解决方案

Extjs甘特图的大数据量和性能优化 Extjs甘特图所能支持的数据量,以及界面的渲染和操作性能,是衡量一个甘特图组件是否符合项目需要的重要指标。 为了支持超过万级超大数据量的甘特图,Extjs...

芳草凄凄
2012/03/15
0
0
Extjs甘特图开发指南之高级应用

Extjs甘特图的大数据量和性能优化 Extjs甘特图所能支持的数据量,以及界面的渲染和操作性能,是衡量一个甘特图组件是否符合项目需要的重要指标。 为了支持超过万级超大数据量的甘特图,Extjs...

fanganw
2012/02/29
0
0
Extjs MVC开发模式详解

在JS的开发过程中,大规模的JS脚本难以组织和维护,这一直是困扰前端开发人员的头等问题。Extjs为了解决这种问题,在Extjs 4.x版本中引入了MVC开发模式,开始将一个JS(Extjs)应用程序分割成...

鱼煎
2017/11/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

程序员,你焦虑吗?

前言 我很焦虑,请问程序员们,你焦虑吗? 我是一名年过35的北漂程序员,我身边的朋友大多也是程序员。我总感觉到30岁以上的程序员充满了焦虑。“华为清退35岁以上老员工”、“中兴程序员坠楼...

Ala6
21分钟前
1
0
RabbitMQ+PHP 教程一(Hello World)用yii2测试通过

介绍 RabbitMQ是一个消息代理器:它接受和转发消息。你可以把它当作一个邮局:当你把邮件放在信箱里时,你可以肯定邮差先生最终会把邮件送到你的收件人那里。在这个比喻中,RabbitMQ就是这里...

hansonwong
26分钟前
0
0
Netty原理分析往这边看!

Netty是一个高性能、异步事件驱动的NIO框架,它提供了对TCP、UDP和文件传输的支持,作为一个异步NIO框架,Netty的所有IO操作都是异步非阻塞的,通过Future-Listener机制,用户可以方便的主动...

Java干货分享
30分钟前
2
0
在Scala中构建Web API的4大框架

Scala是一种强大的语言,很快就成为许多开发人员的最爱。然而,语言只是一个起点-并非每个函数都将由语言核心覆盖。Scala还创建了一些厉害的框架。接下来看看Scala的4个强大框架以及其优点和...

数据星河
34分钟前
0
0
天猫双 11 背后:409 亿次安全保护,全链路保障每个购物场景

2135 亿元!2018 天猫双 11 再次刷新纪录。 这一数字背后,为了让用户更畅快买买买,一个简单的点击下单过程,就有百余项阿里安全技术在保驾护航:全天拦截 16 亿次恶意攻击、保护 409 亿次用...

Mr_zebra
40分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部