学习ExtJS有一段时间了,一些相关知识点虽然每天都在用,不过如果猛的一问起来还是会一愣,趁现在好好梳理下吧。长期修改添加,弄清楚什么就加入什么。


1、Ext.onReady():

  onReady()方法是Ext.loader.onReady()方法的别名。这个方法用于监听ExtJS以及HTML页面是否加载完成。当一切都加载完成以后,执行Ext.onReady()指定的方法。

  Ext.onReady(Object fn, object scope, Object options)

  其中,参数fn指定加载完成后执行的方法;参数scope指定方法的范围(fn);第三个方法执行附加选项。如:delay。参数2、3为可选参数。


2、渲染render:

  渲染是指含有 ExtJS 程序的页面下载完毕后在浏览器中完全展现出来的一个过程。

  作为普通的Html页面也有渲染的过程,即Html与CSS代码开始装载进浏览器到整个页面根据Html与CSS规则完全显示出来的过程。但是在ExtJS中有完全不同于Html与CSS渲染过程的地方,虽然ExtJS的界面最终也是以Html与CSS来展现,但是这些Html与CSS不是从服务器下载而来,而完全是由ExtJS的引擎动态生成而来。所以ExtJS的渲染实际上是一个动态生成的过程,而非静态载入的过程。


3、窗口Window:

  ExtJS中的窗口并不是一个真正的Windows窗口,在本质上只是一个层利用CSS进行格式化,在外观和行为上都比较像真正的Windows窗口的显示区域。说到显示区域就应该想到面板,实际上在ExtJS的继承层次上,窗口组件就是继承于面板组件。明白了ExtJS中窗口的本质就是一个层的话,那么就一定要知道它与真正 Windows 窗口的不一样,比如要将 ExtJS 窗口拖出到浏览器窗口之外等等想法显然就是不能实现的。


4、Ext.define():

  用于定义或拓展一个类。

  Ext.define(String className, Object data, [Function createFn])。

  内置3个参数,包括类名字(className)、对象数据逻辑和方法(data)、回调函数;

  Ext.define()方法和Ext.extend()方法都用于自定义类,不过4.0版本后就不推荐使用Ext.extend()。第二个参数是一个对象,该对象用于为新创建的类指定属性,该对象可以指定任何合法属性:

  self:引用当前类本身;

  alias:定义类别名;

  config:用于为该类指定配置选项,ExtJS会自动为config指定的选项添加setter方法和getter方法。

  extend:用于指定该类继承的父类;

  statics:用于为该类定义静态方法和属性;

  mixins:列出所有要被混入的类;

  override:定义要覆盖的类;

  requies:用于列出实例化前必须预先加载的类;

  singleton:如果该属性为true,则这个类是单例的;

  uses:用于列出必须与该类同事使用的类。


5、Ext.data.proxy.Proxy:

  代理的职责为加载和保存数据。它可以用于Store,也可直接用于Model,不过一般推荐仅只在Store中使用,而把Model作为一个纯实体链接来使用,让它的类中只包含字段、主从表对应关系和验证等基础信息,将proxy放到Store中。

  Model代表应用程序管理的一些对象。Model定义为字段、任意方法和与模型相关的属性的集合。

  Store的职责是封装Model并配置代理来读取、保存数据。它具有排序、过滤和分组的功能。


6、Ext.create():

  用于创建对象。

  var a = Ext.create(String name, Object args)

  其中第一个参数为指定要创建对象的类名,第二个参数为一个javascript对象,用于向新生成的对象传入构造参数值(也成为配置选项,可以为config属性指定选项传入参数值)。

  在4.0版本以后,建议尽量用Ext.create代替new创建对象的实例。

【ExtJS】一些基本概念的梳理的更多相关文章

  1. 通用工业协议(CIP)形式化的安全分析(前期概念的梳理)

    1.CIP的概念的梳理 CIP是为开放的现场总线DeviceNet ControlNet   EtherNet/IP 网络提供公共的应用层和设备描述, CIP是基于对象的协议,使用生产者/消费者模型, ...

  2. Allegro建立引脚封装概念名词梳理

    首先感谢于博士的60讲的Cadence教学视频,老师讲的还是很有耐心,很细致,谢谢! 目前还只是看到建立PCB封装这一块,正好手头上有个案子在做,边做边学的进度还是要好很多.以前的工作对原理图这一块的 ...

  3. Spring 笔记(一)概念梳理

    概念 预备知识 1. POJO POJO是Plain Old Java Object的缩写,是软件开发大师Martin Fowler提出的一个概念,指的是一个普通Java类.也就说,你随便编写一个Ja ...

  4. 从一次编译出发梳理概念: Jetty,Jersey,hk2,glassFish,Javax,Jakarta

    从一次编译出发梳理概念: Jetty,Jersey,hk2,glassFish,Javax,Jakarta 目录 从一次编译出发梳理概念: Jetty,Jersey,hk2,glassFish,Jav ...

  5. 如何一步一步用DDD设计一个电商网站(二)—— 项目架构

    阅读目录 前言 六边形架构 终于开始建项目了 DDD中的3个臭皮匠 CQRS(Command Query Responsibility Segregation) 结语 一.前言 上一篇我们讲了DDD的 ...

  6. 浅谈我对DDD领域驱动设计的理解

    从遇到问题开始 当人们要做一个软件系统时,一般总是因为遇到了什么问题,然后希望通过一个软件系统来解决. 比如,我是一家企业,然后我觉得我现在线下销售自己的产品还不够,我希望能够在线上也能销售自己的产品 ...

  7. javascript 高级程序设计 -有感

    本来我想写一个高级程序设计总结的,结果发现我进入了一扇门,里面所有的字都要逐字逐句的理解,所有描述已经是非常精炼了,我最初的想法无异于老鼠吃大象. 我现在记录的是我在看这本时的感想. 2015.4月9 ...

  8. 【转】一个lucene的官网例子

    创建索引: import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import jav ...

  9. (转载)浅谈我对DDD领域驱动设计的理解

    原文地址:http://www.cnblogs.com/netfocus/p/5548025.html 从遇到问题开始 当人们要做一个软件系统时,一般总是因为遇到了什么问题,然后希望通过一个软件系统来 ...

随机推荐

  1. wc项目记录

    1.Github项目地址:https://github.com/3116004700/ruanjiangongcheng 2.预估时间见PSP表格. 3.解题思路描述: 在看到这个项目的时候我就想到了 ...

  2. MVC4 Model ControllerDescriptor

    1. ControllerDescriptor 的描述 Controller  的Action 方法有以下一些特性: 1.1 ActionNameAttribute特性  他继承自 System.We ...

  3. oracle数据库sqlldr命令的使用

    将数据导入 oracle 的方法应该很多 , 对于不同需求有不同的导入方式 , 最近使用oracle的sqlldr命令 导入数据库数据感觉是个挺不错的技术点 .  使用sqlldr命令 将文本文件导入 ...

  4. C#中使用Redis学习一 windows安装redis服务器端和客户端

    学习背景 今天是2015年1月2日,新年刚开始的第二天,先祝大家元旦快乐啦(迟到的祝福吧^_^).前段时间一直写Jquery插件开发系列博文,这个系列文章暂停一段时间,最近一直在看redis,我将把r ...

  5. solr7.3集群搭建

    solr集群搭建 原博客:https://blog.csdn.net/gdsgdh308227363/article/details/81004706 注意,在搭建solr集群前,建议最好有一个sol ...

  6. Perl+OpenGL 重绘inkscape生成的svg矢量图

    Perl+OpenGL 重绘inkscape生成的svg矢量图 还不够完善,先挖个坑,后面慢慢填 Code: [全选] [展开/收缩] [Download] (Untitled.pl) =info A ...

  7. [USACO09FEB] 改造路Revamping Trails | [JLOI2011] 飞行路线

    题目链接: 改造路 飞行路线 其实这两道题基本上是一样的,就是分层图的套路题. 为什么是分层图呢?首先,我们的选择次数比较少,可以把这几层的图建出来而不会爆空间.然后因为选择一个边权为0的路线之后我们 ...

  8. JS延时器 定时器 暂停器 中断器

    // numberMillis 毫秒 function sleep(numberMillis) { var now = new Date(); var exitTime = now.getTime() ...

  9. AOP拦截日志报错llegalStateException: It is illegal to call this method if the current request is not in asynchronous mode

    原文链接:https://my.oschina.net/mengzhang6/blog/2395893 关于一次AOP拦截入参记录日志报错的梳理总结 将服务发布到tomcat中后,观察服务的运行状态以 ...

  10. 解决mysql最大允许传输包不足的问题

    一.报错提示内容和原因 在执行“数据传输”或者“运行SQL文件”时报错误:Got a packet bigger than 'max_allowed_packet' bytes With,表明当前所传 ...