• Ext.onReady——Ext主入口,和onload事件不同,不需要页面所有东西加在出来。

Ext js 的基本语法就是使用树状图来配置对象来定义界面:


config_options1:value1,
config_options1:value1,

config_options1:value1,
  layout:{},
  items:[
  { },
  { },//配置对象
  …],
listeners:{
//定义事件(根据需要而定)
click:function(){},
dblclick:function(){}

}

格式中 config_options1: config_options1:value1 都是API文档中对象的配置项。

  • 属性layout可以是对象,也可以是字符。该属性表示当前容器内使用什么来填充子空间。如果没有特殊要求,使用布局的别名作为值。
  • 如使用Hbox布局 ,布局内的子控件需要剧中对齐。
layout:{
type:'hbox',
align:'middle'
}
  • items属性。是一个数组。可以在里面定义当前控件的子控件。里面是一个或者多个配置项,跟需要而定。
  • 属性listeners是一个对象,可以在里面绑定事件。对象的属性就是事件名称。属性值就是要执行的函数。
  • xtype——在使用ExtJS时,很多时候通过定义xtype来指定改位置使用什么组件。例如:“ xtype:"panel" ”,这里指定使用面板作为当前位置的组件。这样做的主要目的是简化代码。如果没有xtype,就得先使用变量指向一个组件,然后将其加入父组件中;或者直接在父组件中的定义中加入一堆由new关键字或Ext.Create方法创建的组件。——所以,这不但影响熟悉代码的效率,还影响代码的可读性。                           ————注:在某些组件下,会默认其内部组件为某些组件,所以就不用书写xtype语句。
  • new——在extjs4版本之前用new关键字创建对象。new class([config])class是类名,config是可选参数。
  • Ext.careate——新增的创建对象语法。
Ext.create(classname,[config])

 注:其中classname可以是类的【全名】、【别名】、【备用名】;config是可选参数,为类的配置对象

  • 使用Ext.widge或Ext.careteWidget创建对象
  • 使用Ext.ns或Ext.namespace定义命名空间

    注:定义一个“MyApp”的命名空间,可以如下图实现:

MyApp={}
//创建命名空间
Ext.namespace{"MyApp","MyApp.data","MyApp.user"};
Ext.ns{"MyApp","MyApp.data","MyApp.user"};
  • 使用Ext.define定义新类————在ExtJs3中,定义新类使用的是Ext.extend方法。ExtJS4定义类语法如下:
Ext.define(classname,properties,callback);
//classname 类名
//properties 新类的配置对象,对乡里包含了类的属性集对象。下表列出常用属性以及说明。
//callback :回调函数,当类创建完成后,执行该函数。

常用属性集对象以及说明

属性 说明

extend

要继承的类的名称。比如subclass继承自supclass,定义如下:

Ext.define("subclass",{extend:"superclass",……})
 alternateClassName

类的备用名称,例如:

Ext.define("subclass",{
alternateClassName:"myclass",

});

这样subclass就有了一个备用名称“myclass”,在使用Ext.create创建对象时就可以使用myclass这个名称创建subclass实例了。

 alias  类的别名,用法和alternateClassName一样
 requires  需要使用到的类名数组,在动态加载时会根据该属性去下载类,譬如subclass。需要使用到Ext.EventManager和Ext.util.MixedCollection,定义如下:

Ext.define("subclass"{
requires:["Ext.EventManager","Ext.util.MixedCollection"],
});
 constructor    构造属性,一般来初始化类的配置项和调用父类的方法,例:

Ext.define("subclass",{
extend:"superclass",
constructor:function(config){
this.initConfig(config);

this.callParent("mehtodName");
},

});
   
 config

定义类的配置项,创建时会自动为config里面的每个属性添加set和get

方法,例如:

        Ext.define("subclass", {
config: {
width: 100,
heigth:100
},
construtor: function(config) {
this.initConfig(config);
//…
return this;
},
//…
});
var mysubclass = new subclass();
mysubclass.setWidth(200);
mysubclass.getHeigth();

代码中,initConfig方法执行后就会为config的属性创建get和set方法。

这样创建类的示例后,就可以直接通过set和get方法读写属性的值。

注:例子中用setWidth设置了配置中width的值,使用getHigth获取了heigth的值。

 statics  

定义静态方法,例如:

        Ext.define("subclass", {
statics: {
method: function (args) {
return new this(args);
}
},
constructor: function (config) {
this.initConfig(config);
}
});
var myclass = subclass.method("class");
   
  • apply和applyIf方法——将所有配置对象的成员复制到对象。
  • ExtJS4.0 不推荐使用extend方法。在这之前所有类以及自定义扩展基本都是使用extend定义的。ExtJS中,因为对类系统进行了重新架构,因而除了个别类外,基本都是用defind方法来定义。
  • 数据及类型检测

1.typeOf:检测变量的类型

(1)语法

    Ext.typeOf(v);

   其中v是要检测的变量:下面列出了可能的返回值。

  1. undefined——无定义
  2. null——空
  3. string——字符串
  4. number——数组
  5. boolean——布尔值
  6. date——日期
  7. function——函数
  8. object——对象
  9. array——数组
  10. regexp——正则表达式
  11. element——DOM元素
  12. textnode——DOM的文本节点且包含内容
  13. whitspace——DOM的文本节点且内容为空

源代码:

page:119

1.isEmpty:检测值是否为空

  1. 语法

 

//获取Controller
Ext.getApplication().loadModule('md.mdOCarController');

  • renderer可以格式化该列显示的数据格式或者按照你自定义的脚本显示最终数据样子(我目前是这么理解的)

先看下renderer: function()里的参数

renderer:function(value, cellmeta, record, rowIndex, columnIndex, store){

}
1.value是当前单元格的值
2.cellmeta里保存的是cellId单元格id,id不知道是干啥的,似乎是列号,css是这个单元格的css样式。
3.record是这行的所有数据,你想要什么,record.data["id"]这样就获得了。
4.rowIndex是行号,不是从头往下数的意思,而是计算了分页以后的结果。
5.columnIndex列号太简单了。
6.store,这个厉害,实际上这个是你构造表格时候传递的ds,也就是说表格里所有的数据,你都可以随便调用,唉,太厉害了。

名词解释——Ext JS4的更多相关文章

  1. nodejs、npm、grunt——名词解释

    最近着手开发一个新项目,打算从工程化的角度整理一套自己的前端开发.发布体系. grunt这些工具,之前别人用我也用,并没有认真想过它们的前世今生,正好趁着这个机会,我来理一理目前业界比较流行这些工具的 ...

  2. Sql常用语法以及名词解释

    Sql常用语法以及名词解释 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) D ...

  3. 转OSGchina中,array老大的名词解释

    转OSGchina中,array老大的名词解释 转自:http://ydwcowboy.blog.163.com/blog/static/25849015200983518395/ osg:: Cle ...

  4. css名词解释

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. sudo权限添加 和 rpm、deb之名词解释

    sudo权限添加: 刚开始用Center_os Linux操作系统,想装个输入法,搜了一下,看到linux下的搜狗输入法(帖子链接)下载下来的文件的扩展名是.deb,直接用帖子上的一个命令: sudo ...

  6. SourceTree&Git部分名词解释

    SourceTree&Git部分名词解释 克隆(clone):从远程仓库URL加载创建一个与远程仓库一样的本地仓库 提交(commit):将暂存文件上传到本地仓库(我们在Finder中对本地仓 ...

  7. Ext JS4 学习笔记之发送表单(Form)时也将表单下的表格(Grid)数据一同发送的方法

    Ext JS4 学习笔记之发送表单(Form)时也将表单下的表格(Grid)数据一同发送的方法 昨天在开发的时候遇到个小问题,就是如何将Grid的内容与Form一起发送到服务器端.默认情况下,表单(F ...

  8. b2c项目基础架构分析(二)前端框架 以及补漏的第一篇名词解释

    继续上篇,上篇里忘记了也很重要的前端部分,今天的网站基本上是以一个启示页,然后少量的整页切换,大量的浏览器后台调用web服务局部.动态更新页面显示状态这种方式在运作的,从若干年前简单的ajax流行起来 ...

  9. b2c项目基础架构分析(一)b2c 大型站点方案简述 已补充名词解释

    我最近一直在找适合将来用于公司大型bs,b2b b2c的基础架构. 实际情况是要建立一个bs架构b2b.b2c的网站,当然还包括wap站点.手机app站点. 一.现有公司技术人员现状: 1.熟悉asp ...

随机推荐

  1. call(),apply()和bind()

    三个函数都是Function对象自带的三个方法,主要作用是改变函数中this的指向. call() 语法 fun.call(thisArg[, arg1[, arg2[, ...]]]) 该方法可以传 ...

  2. 一起入门python6之函数

    今天我们来学习新的一篇吧,那便是“函数(function)”我们用def来定义一个函数,以案例说话.>>> def name(x):          #定义一个“name”的函数. ...

  3. php处理数据库数据,每处理一个数据返回客户端显示当前状态的方法。

    php处理大量数据,每处理一个数据返回客户端显示当前状态的方法. 类似于dedecms生成静态页 想法: 客户端发送请求 服务器端接受请求,开始统计所需处理的数据量 将所需处理数据按一定规则排列,发送 ...

  4. mysql的安装以及基本操作

    一.在Linux 下安装MySQL ubuntu 下可以直接使用apt-get . centos 下yum源有没有就不知道了. 1. sudo apt-get install mysql-server ...

  5. Raspberry Pi 学习笔记之一

    记录几个搭建服务器教程: [教程] 将树莓派变成网络打印机服务器(更新PC和手机端设置)!http://www.eeboard.com/bbs/thread-8818-1-1.html[心得] [分享 ...

  6. django之form表单验证

    django中的Form一般有两种功能: 输入html 验证用户输入 #!/usr/bin/env python # -*- coding:utf- -*- import re from django ...

  7. 全部springxml文件约束 applicationContext.xml

    <?xml version="1.0" encoding="utf-8"?> <beans xmlns="http://www.sp ...

  8. python gui之tkinter界面设计pythonic设计

    ui的设计,控件id的记录是一件比较繁琐的事情. 此外,赋值和读取数据也比较繁琐,非常不pythonic. 有没有神马办法优雅一点呢?life is short. 鉴于控件有name属性,通过dir( ...

  9. pycharm3.4 下svn 项目checkout&配置

    pycharm 社区版: 3.4 1. checkout 项目 注意,之前配置好:设置里面的一些配置:(以下勾勾不要勾上) 2. checkout 项目之后,做以下操作: vcs ->enabl ...

  10. [转]Java连接各种数据库的方法

    //MySQL:       String Driver="com.mysql.jdbc.Driver";   //驱动程序     String URL="jdbc:m ...