配置选项
这个对象初始化过程中被添加到一个配置对象,其中包含一个或多个事件处理程序。这应该是一个配置对象,在指定的有效听众addListener一次附加多个处理程序的例子。
来自外部JS DOM事件的组件
虽然一些 Ext JS的组件类导出选定的DOM事件(如“点击”,“鼠标悬停”等),这通常只是做时可以增加额外的价值。例如DataView中的itemClick
事件传递的节点上点击。来访问DOM事件,直接从一个组件的子元素,我们需要指定元素的
选项来确定组件的属性,添加一个DOM监听:
EL基本属性面板上的
FN : 函数(){ 控制台。日志('点击EL' );
} } ,
双击: {
元素: '身体' , / /绑定到底层的身体属性面板上的
FN 功能(){ 控制台。日志('双击体' );
} }
} } );
模型的阵列到需要从AppName.model命名空间。例如:
分机,定义(“MyApp.controller.Foo , {
延长 “Ext.app.Controller” ,
机型: [ '用户' , '汽车' ]
});
这相当于:
Ext.define("MyApp.controller.Foo", {
extend: "Ext.app.Controller",
requires: ['MyApp.model.User', 'MyApp.model.Vehicle']
});
属性
获取当前类的引用,此对象被实例化。与静, this.self
是依赖范围和它意味着要使用动态继承。看到静 的详细比较
分机定义(“My.Cat , {
静: {
speciesName : '猫' / / My.Cat.speciesName的'猫'
},
构造函数: 函数() {
警报(这个自我。speciesName ); / 依赖“这'
返回 ;
}
克隆: 函数() {
返回 新的 自我();
}
});
分机定义(“My.SnowLeopard' , {
延长 'My.Cat' ,
静: {
speciesName : '雪豹' / / My.SnowLeopard.speciesName ='雪豹'
} } );
猫= 新 。猫(); / /警报“猫”
VAR snowLeopard = 新 。SnowLeopard (); / /警报“雪豹”
VAR 克隆snowLeopard 。的clone ();
警 报(分机。getClassName (克隆)); / /警报“My.SnowLeopard
方法
实例方法
一个事件处理程序附加到该对象。
参数
- eventName:字符串
事件听的名字。也可能是一个对象的属性名称是事件名称。
- FN:功能
事件调用的方法。将被称为参数给 fireEvent加
选项
参数如下所述。 - 对象范围:(可选)
范围(
此
参考)在处理函数被执行。如果省略,则默认为触发事件的对象。 - 选项:对象(可选)
一个对象,它包含处理程序的配置。
注:在ExtJS的3.x的不同,选择的对象也将被传递到每一个事件处理程序作为最后一个参数。
这个对象可能包含以下属性:
-
范围:对象
范围(
此
参考)在处理函数被执行。如果省略,则默认为触发事件的对象。 -
延迟:数字
延迟的毫秒数后触发的事件处理程序的调用。
-
单:布尔
真正要添加一个处理程序处理的事件下烧成,然后删除自身。
-
缓冲区数目
使处理程序安排运行在Ext.util.DelayedTask延迟指定的毫秒数。如果在这段时间内再次触发事件,原来的处理程序是不会被调用,但新的处理程序是在它的地方举行。
-
目标:观测
如果事件被解雇的目标观测,如果事件冒泡孩子观察到,只调用处理程序。
-
元素:字符串
此选项仅用于绑定到听众的有效成分。引用一个元素添加一个侦听器组件属性的名称。
此选项是在添加元素的DOM事件监听器组件建设有用的 组件,将组件被渲染后,才存在。例如,点击监听器添加到面板的身体:
新的 分机。面板。面板({ 标题: “标题” , 听众: { 点击: 本。handlePanelClick , 元素: '身体' } });
结合选项
使用该选项的参数,它是可以结合不同类型的听众:
一个延迟的,一次性的监听器。
myPanel 。上(“隐藏” , 这一点。handleClick , { 单: 真实, 延迟: 100 });
附加多个处理程序在1个呼叫
该方法还允许一个单一的参数被传递,这是一个配置对象,其中包含指定多个事件的性质。例如:
重要。确保“这个”是正确的处理程序的执行过程中 });
一个也可以单独指定每个事件处理程序的选项:
myGridPanel.on({ cellClick: {fn: this.onCellClick, scope: this, single: true}, mouseover: {fn: panel.onMouseOver, scope: panel} });
-
将监听器添加任何Observable对象(或Ext.Element对象),这个组件被销毁时被自动删除。
参数
- 项目:Ext.util.Observable / Ext.Element对象
该项目添加一个监听器/监听器。
- ENAME:对象 / 字符串
事件的名称,或一个包含事件名称属性的对象。
- FN:功能(可选)
如果
ENAME
参数是一个事件的名称,这是处理函数。 - 对象范围:(可选)
如果
ENAME
参数是一个事件的名称,这是在处理函数执行的范围(此
参考)。 - 选择对象(可选)
如果
ENAME
参数是一个事件的名称,这是的 addListener选项。
调用父的重写的方法。例如:
分机定义(“My.own.A ,
构造函数: 函数(测试) {
警报(测试);
} } );
分机定义(“My.own.B' , {
延长: “My.own.A
构造函数: 函数(测试) {
警报(测试);
这一点。callParent ([ 测试+ 1 ]);
} } );
分机定义(“My.own.C' , {
延长: “My.own.B
构造函数: 函数() {
警报(“要打 电话给父母的重载构造...” );
。callParent (参数);
} } );
VAR 1 = 新的 我。A (1 ); / /警报'1'
VAR = 新的 我自己。B (1 ) / /警报'1',然后提醒'2'
VAR = 新的 我。自己的 C (2 ); / /警示“要打 电话给父母的重载构造...”
/ /警报'2',然后提醒'3'
参数
- 参数:阵列 /参数
的论点,或者一个数组
参数
对象从目前的方法,例如:this.callParent(参数)
返回
- 物件
返回从父类的方法的结果。
通过选定的组件Ext.ComponentQuery添加听众。接受一个对象,其中包含组件路径映射到一个侦听器函数的散列。
在下面的例子updateUser
功能映射到点击
一个按钮组件,这是一个孩子的事件useredit
组件。
分机。定义(“AM.controller.Users' , {
INIT : 函数() {
。控制({
'useredit [动作按钮保存]' : {
点击 。updateUser
}
});
},
updateUser : 功能(按钮) {
控制台日志(“点击”保存“按钮” );
} } );
看到Ext.ComponentQuery组件选择的更多信息。
参数
启用这个观测发射泡了一个雇主阶层,通过调用事件this.getBubbleTarget()
如果存在。有没有在观察基类的实现。
这是常用由雇主容器的泡沫事件Ext.Components。看到Ext.Component.getBubbleTarget。在默认情况下实施Ext.Component返回组件的直接雇主。但是,如果需要一个已知的目标,这可以重写更迅速地访问所需的目标。
例如:
分机(分机形式。领域。基地, {
/ /添加功能initComponent场的启用更改事件
/ /我们知道我们想要的泡沫直接向现场的事件
VAR myForm的 新 分机。formPanel (
标题: “用户详细信息” ,
项目: [{
...
}],
听众: {
变化: 函数() {
/ /标题变红,如果已被修改的形式
myForm的。头。使用setStyle ('色' , '红' );
}
} } );
参数
触发指定的事件传递的参数(零下事件的名称,再加上选择
对象传递给addListener)。
事件可以设置泡了一个观察的父层次(见Ext.Component.getBubbleTarget)调用enableBubble。
参数
返回
- 布尔
如果处理程序的任何虚假的回报返回false,否则返回true。
将监听器添加任何Observable对象(或Ext.Element对象),这个组件被销毁时被自动删除。
参数
- 项目:Ext.util.Observable / Ext.Element对象
该项目添加一个监听器/监听器。
- ENAME:对象 / 字符串
事件的名称,或一个包含事件名称属性的对象。
- FN:功能(可选)
如果
ENAME
参数是一个事件的名称,这是处理函数。 - 对象范围:(可选)
如果
ENAME
参数是一个事件的名称,这是在处理函数执行的范围(此
参考)。 - 选择对象(可选)
如果
ENAME
参数是一个事件的名称,这是的 addListener选项。
删除被添加的听众星期一方法。
参数
- 项目:Ext.util.Observable / Ext.Element对象
该项目从其中删除监听器/监听器。
- ENAME:对象 / 字符串
事件的名称,或一个包含事件名称属性的对象。
- FN:功能(可选)
如果
ENAME
参数是一个事件的名称,这是处理函数。 - 对象范围:(可选)
如果
ENAME
参数是一个事件的名称,这是在处理函数执行的范围(此
参考)。
速记addListener。
一个事件处理程序附加到该对象。
参数
- eventName:字符串
事件听的名字。也可能是一个对象的属性名称是事件名称。
- FN:功能
事件调用的方法。将被称为参数给 fireEvent加
选项
参数如下所述。 - 对象范围:(可选)
范围(
此
参考)在处理函数被执行。如果省略,则默认为触发事件的对象。 - 选项:对象(可选)
一个对象,它包含处理程序的配置。
注:在ExtJS的3.x的不同,选择的对象也将被传递到每一个事件处理程序作为最后一个参数。
这个对象可能包含以下属性:
-
范围:对象
范围(
此
参考)在处理函数被执行。如果省略,则默认为触发事件的对象。 -
延迟:数字
延迟的毫秒数后触发的事件处理程序的调用。
-
单:布尔
真正要添加一个处理程序处理的事件下烧成,然后删除自身。
-
缓冲区数目
使处理程序安排运行在Ext.util.DelayedTask延迟指定的毫秒数。如果在这段时间内再次触发事件,原来的处理程序是不会被调用,但新的处理程序是在它的地方举行。
-
目标:观测
如果事件被解雇的目标观测,如果事件冒泡孩子观察到,只调用处理程序。
-
元素:字符串
此选项仅用于绑定到听众的有效成分。引用一个元素添加一个侦听器组件属性的名称。
此选项是在添加元素的DOM事件监听器组件建设有用的 组件,将组件被渲染后,才存在。例如,点击监听器添加到面板的身体:
新的 分机。面板。面板({ 标题: “标题” , 听众: { 点击: 本。handlePanelClick , 元素: '身体' } });
结合选项
使用该选项的参数,它是可以结合不同类型的听众:
一个延迟的,一次性的监听器。
myPanel 。上(“隐藏” , 这一点。handleClick , { 单: 真实, 延迟: 100 });
附加多个处理程序在1个呼叫
该方法还允许一个单一的参数被传递,这是一个配置对象,其中包含指定多个事件的性质。例如:
重要。确保“这个”是正确的处理程序的执行过程中 });
一个也可以单独指定每个事件处理程序的选项:
myGridPanel.on({ cellClick: {fn: this.onCellClick, scope: this, single: true}, mouseover: {fn: panel.onMouseOver, scope: panel} });
-
移除事件处理程序。
参数
- eventName:字符串
事件的类型与处理程序。
- FN:功能
处理程序删除。这必须是addListener调用传递到功能的参考 。
- 对象范围:(可选)
最初的范围指定为处理程序。它必须是在原来的呼叫指定的范围参数相同addListener或听者不会被删除。
删除被添加的听众星期一方法。
参数
- 项目:Ext.util.Observable / Ext.Element对象
该项目从其中删除监听器/监听器。
- ENAME:对象 / 字符串
事件的名称,或一个包含事件名称属性的对象。
- FN:功能(可选)
如果
ENAME
参数是一个事件的名称,这是处理函数。 - 对象范围:(可选)
如果
ENAME
参数是一个事件的名称,这是在处理函数执行的范围(此
参考)。
获取从该对象被实例化的类的引用。注意this.statics()
,不同
的自我, 是独立的范围,它总是返回从它被称为类,无论是什么 这
点在运行时
分机定义(“My.Cat , {
静: {
totalCreated : 0 ,
speciesName : '猫' / / My.Cat.speciesName的='猫'
},
构造函数: 函数() {
VAR 静= 。静();
警报(静。speciesName ); / /总是等于“猫”,不管是什么'这个'是指到
/ /相当于:My.Cat.speciesName
提醒(自我。speciesName ); / /依赖于'这个'
静。totalCreated的+;
返回 ;
}
克隆: 函数() {
VAR 克隆= 自我; / /'这个'依赖
克隆。GROUPNAME = 。静。()speciesName ; / /等价于:My.Cat.speciesName
返回克隆;
} } );
分机。定义(“My.SnowLeopard , {
延长 'My.Cat'
静: {
speciesName : '雪豹' / / My.SnowLeopard.speciesName,='雪豹'
},
构造函数: 函数() {
。callParent ();
} } );
猫= 新 。猫(); / /警报“猫”,然后提醒“猫”
VAR snowLeopard = 新 。SnowLeopard (); / /警报“猫”,然后警报'雪豹'
克隆= snowLeopard 的clone ();
警 报(分机。getClassName (克隆)); / /警报“My.SnowLeopard
警报(克隆。的groupName ); / /警报“猫”
警觉(我猫。totalCreated的); / /警报3
返回
移除事件处理程序。
参数
- eventName:字符串
事件的类型与处理程序。
- FN:功能
处理程序删除。这必须是addListener调用传递到功能的参考 。
- 对象范围:(可选)
最初的范围指定为处理程序。它必须是在原来的呼叫指定的范围参数相同addListener或听者不会被删除。
静态方法
创建这个类的新实例。
分机。定义(“My.cool.Class' , {
...
});
我的 很酷。类。创建({
someConfig : 真
});
所有参数被传递给类的构造。
返回
- 物件
创建的实例。
创建现有的原型方法的别名。例如:
分机定义(“My.cool.Class' , {
方法一: () { ... }
方法二: 函数() { ...
} } );
测试= 新 我很酷。类();
我的。凉爽。类。createAlias ({
method3 : “方法一” ,
method4 : “方法二”
});
测试。method3 (); / / test.method1()
我的凉爽。类。createAlias (“method5' , 'method3“ );
测试。method5 (); / / test.method3() - > test.method1()
参数
- 别名:字符串 / 对象
新方法的名称或对象设置多个别名。看到 flexSetter
- 起源:字符串 / 对象
原来的方法名
获取当前类的名称,以字符串格式。
分机定义(“My.cool.Class , {
构造 函数() {
提醒(自我的getName ()) / /警报“My.cool.Class,'
}
});
我的 很酷。类。的getName (); / / My.cool.Class的“
返回
- 串
的className
方法/属性添加到这个类的原型。
分机。定义(“My.awesome.Cat ,
构造 函数() {
...
}
});
我真棒。猫。实施({
喵: 函数() {
警报(Meowww ......“ );
} } );
VAR 小猫= 新的 我。真棒。猫,
小猫喵();
参数
- 成员:对象