Files
Ext 命名空间(全局对象)封装了所有类、单例和 Sencha 库所提供的实用方法。
大多数用户界面组件在一个较低的层次嵌套在命名空间中, 但是提供的许多常见的实用函数作为 Ext 命名空间的直接属性。
此外提供许多常用的方法,从其他类作为 Ext 命名空间内的快捷方式。 例如 Ext.getCmp 就是 Ext.ComponentManager.get 的别名。
一旦DOM准备好,许多应用程序启动,调用Ext.onReady。 这可以确保已加载所有脚本, 防止依赖性问题。例如:
Ext.onReady(function(){
new Ext.Component({
renderTo: document.body,
html: 'DOM ready!'
});
});
有关如何使用Ext类的更多信息,请参见:
一个1x1的透明gif图像,Ext使用它来和CSS一起创建内嵌的图标的URL。 在旧版本的IE浏览器,默认路径为"http://sencha.com/s.gif", 并且你必须把它改成你自己的服务器上的图片路径。 对于其他浏览器使用内联数据的URL。
使用 Ext 时,在安全模式下,iframe src 和 onReady src
防止 IE 不安全内容警告的空白文件的 URL 。
('about:blank'
,除了为IE的安全模式,这个是 'javascript:""'
).
指示是否使用本地浏览器解析JSON方法。 如果浏览器不支持原生JSON方法这个选项将被忽略。
注意: 原生 JSON 方法与具有函数的对象将无法工作。 此外,属性名称必须用引号,否则数据将不能解析。
Defaults to: false
Ext.env.Browser的全局实例
Ext.env.Browser的全局实例
当前Chrome的版本 (如果浏览器不是 Chrome 则返回0)。
当前Chrome的版本 (如果浏览器不是 Chrome 则返回0)。
一个零长度的字符串,将通过真实测试。用于传递给方法, 它们使用一个真实测试,来拒绝falsy值一个字符串的值,则必须清除。
一个零长度的字符串,将通过真实测试。用于传递给方法, 它们使用一个真实测试,来拒绝falsy值一个字符串的值,则必须清除。
如果Ext.fx.Anim 类是可用的则为true。
如果Ext.fx.Anim 类是可用的则为true。
如果为true,则允许自动周期性的清空孤立的Ext.Elements
Defaults to: true
如果为true,则在自动清空缓存中的元素后移除相应的监听器
Defaults to: true
实验。 设置为true,删除一个元素时,级联监听器删除子元素。 目前未优化的性能。
Defaults to: false
一个数组,包含额外可枚举的低版本浏览器
一个数组,包含额外可枚举的低版本浏览器
当前Firefox的版本 (如果浏览器不是 Firefox 则返回0)。
当前Firefox的版本 (如果浏览器不是 Firefox 则返回0)。
Defaults to: {}
当前IE的版本 (如果浏览器不是IE则为0)。 这并不能说明当前页面的 documentMode ,这是考虑到isIE7, isIE8 和 isIE9。因此,这并不总是正确的:
Ext.isIE8 == (Ext.ieVersion == 8)
如果检测到浏览器使用Gecko布局引擎则返回true(例如,Mozilla,Firefox)。
如果检测到浏览器使用Gecko布局引擎则返回true(例如,Mozilla,Firefox)。
如果检测到浏览器中使用 Gecko 5.0+ 布局引擎则返回true(例如Firefox 5.x)。
如果检测到浏览器中使用 Gecko 5.0+ 布局引擎则返回true(例如Firefox 5.x)。
如果检测到浏览器中使用 Gecko 1.9 + 布局引擎则返回true(例如Firefox 3.x)。
如果检测到浏览器中使用 Gecko 1.9 + 布局引擎则返回true(例如Firefox 3.x)。
如果检测到浏览器中使用 Gecko 2.0+ 布局引擎则返回true(例如Firefox 4.x)。
如果检测到浏览器中使用 Gecko 2.0+ 布局引擎则返回true(例如Firefox 4.x)。
如果检测到浏览器中使用 Gecko 5.0+ 布局引擎则返回true(例如Firefox 5.x)。
如果检测到浏览器中使用 Gecko 5.0+ 布局引擎则返回true(例如Firefox 5.x)。
如果检测到浏览器是Opera 10.5x则返回true。
如果检测到浏览器是Opera 10.5x则返回true。
如果检测到浏览器是Safari 5.0.x则返回true。
如果检测到浏览器是Safari 5.0.x则返回true。
在全局命名空间中属性的名称(window
在浏览器环境中),引用当前Ext的实例。
这通常是"Ext"
,但如果使用的是 ExtJS 的沙盒生成,这将是一个另类的名称。
如果代码通过eval
来生成使用,或创建一个新的Function
,
并且Ext的全局实例必须被应用,这是应该放在代码中生成的名称。
Defaults to: "Ext"
当前Opera的版本 (如果浏览器不是 Opera 则返回0)。
当前Opera的版本 (如果浏览器不是 Opera 则返回0)。
Ext.env.OS的全局实例。
Ext.env.OS的全局实例。
当使用scopeResetCSS选项时, CSS类用于包装Ext组件。
当使用scopeResetCSS选项时, CSS类用于包装Ext组件。
当前Safari的版本 (如果浏览器不是 Safari 则返回0)。
当前Safari的版本 (如果浏览器不是 Safari 则返回0)。
设置为true,则要重置的 CSS 只适用于 Ext 组件的作用域。 注意,根包装容器包含附加元素。 此外记得当你设置这个选项,你必须使用 ext 的全局作用域 (除非您使用 bootstrap.js 来加载您的 javascript,在这种情况下它会为您处理)。
当前WebKit的版本 (如果浏览器没有使用 WebKit 则返回0)。
当前WebKit的版本 (如果浏览器没有使用 WebKit 则返回0)。
当文档就绪的时候,通过选择符为指定的元素添加事件监听器。
被指定的事件名称具有一个 @
后缀。
Ext.addBehaviors({
// 在id为foo的元素中的所有锚点上添加一个单击事件的侦听器
'#foo a@click' : function(e, t){
// 做一些事情
},
// 把相同的监听器添加到多个选择符上(在@符号前使用逗号分隔)
'#foo a, #bar span.some-class@mouseover' : function(){
// 做一些事情
}
});
要应用的行为列表
将配置的所有属性都复制到指定的对象。 需要注意的是,如果递归合并和克隆不需要引用原始对象/数组, 使用Ext.Object.merge来代替。
返回obj对象
根据指定函数 fn
创建一个代理函数,更改 this
作用域为传入的作用域,
可以选择重写调用的参数。(默认为该函数的参数列表)
需要被代理的原始函数。
(可选) 该函数执行的作用域(this
引用)。
如果省略,默认指向默认的全局环境对象(通常是window)。
(可选) 覆盖原函数的参数列表(默认为该函数的参数列表)。
(可选) 如果该参数为true,将参数加载到该函数的后面, 如果该参数为数字类型,则将参数将插入到所指定的位置。
新产生的函数
在一个指定的作用域内执行一个回调函数。如果没有传递函数则调用将被忽略。
例如,这些行是等效的:
Ext.callback(myFunc, this, [arg1, arg2]);
Ext.isFunction(myFunc) && myFunc.apply(this, [arg1, arg2]);
Ext.Array.clean 的旧别名
过滤掉数组里的空值,空值的定义见 Ext.isEmpty
This method has been deprecated since 4.0.0
请使用 Ext.Array.clean 代替本方法
结果
复制源对象身上指定的属性到目标对象。
示例:
ImageComponent = Ext.extend(Ext.Component, {
initComponent: function() {
this.autoEl = { tag: 'img' };
MyComponent.superclass.initComponent.apply(this, arguments);
this.initialBox = Ext.copyTo({}, this.initialConfig, 'x,y,width,height');
}
});
重要说明: 要借用类的原型方法,使用Ext.Base.borrow来代替。
目标对象。
源对象。
一个属性列表的数组, 或以逗号分隔的属性名列表字符串以用来复制。
默认为false。 传递true则通过原型的键和实例来复制。
所修改的对象。
实例化类要么全名,别名或备用名。
如果Ext.Loader的enabled 类还没有被定义, 它会尝试通过同步加载类。
例如,所有以下三行内容返回相同的结果:
// alias 别名
var window = Ext.create('widget.window', {
width: 600,
height: 800,
...
});
// alternate name 备用名
var window = Ext.create('Ext.Window', {
width: 600,
height: 800,
...
});
// full class name 完整的类名
var window = Ext.create('Ext.window.Window', {
width: 600,
height: 800,
...
});
//单个对象与xclass属性:
var window = Ext.create({
xclass: 'Ext.window.Window', // 任何有效的'name' (以上)
width: 600,
height: 800,
...
});
类名或别名。如果只有一个对象参数被指定,可以指定为xclass
属性。
其他参数的名称后,将被传递给类的构造函数。
instance 实例
便于速记,参见 Ext.ClassManager.instantiateByAlias 创建别名
Ext.JSON.decode的简写形式
解码(解析)JSON字符串对象。如果JSON是无效的,这个函数抛出一个SyntaxError,除非设置了安全选项。
由此生成的对象
延迟调用该函数。你可以加入一个作用域的参数,例如:
var sayHi = function(name){
alert('Hi, ' + name);
}
// 即刻执行的:
sayHi('Fred');
// 两秒过后执行的:
Ext.Function.defer(sayHi, 2000, this, ['Fred']);
// 有时候加上一个匿名
// 函数也是很方便的:
Ext.Function.defer(function(){
alert('Anonymous');
}, 100);
Ext.defer是Ext.Function.defer的别名
要延迟执行的函数。
延迟时间,以毫秒为单位 (如果小于或等于 0 函数则立即执行)
(可选) 该函数执行的作用域(this
引用)。
如果省略,默认指向window。
(可选) 覆盖原函数的参数列表 (默认为该函数的参数列表)
(可选) 如果该参数为true,将参数加载到该函数的后面, 如果该参数为数字类型,则将参数将插入到所指定的位置。
可被clearTimeout所使用的timeout id
定义一个类或覆盖。基本的类定义是这样的:
Ext.define('My.awesome.Class', {
someProperty: 'something',
someMethod: function() {
alert(s + this.someProperty);
}
...
});
var obj = new My.awesome.Class();
obj.someMethod('Say '); // alerts 'Say something'
定义了覆盖,包括override
属性。
汇集处理指定的类,以扩展或修改该类内容的覆盖。
这可能是简单的设置默认的属性值,或者是它可以扩展和/或更换的方法。
这也可以扩展静态变量之类的。
重写的用途之一是管理大类里面的片段。
// File: /src/app/Panel.js
Ext.define('My.app.Panel', {
extend: 'Ext.panel.Panel',
requires: [
'My.app.PanelPart2',
'My.app.PanelPart3'
]
constructor: function (config) {
this.callParent(arguments); // 调用Ext.panel.Panel的构造
//...
},
statics: {
method: function () {
return 'abc';
}
}
});
// File: /src/app/PanelPart2.js
Ext.define('My.app.PanelPart2', {
override: 'My.app.Panel',
constructor: function (config) {
this.callParent(arguments); // 调用 My.app.Panel's 的构造
//...
}
});
重写的另一个用途是提供独立的可选部分类。 在这种情况下,甚至可能会完全不知道该重写类。
//很酷的提示
Ext.define('My.ux.CoolTip', {
override: 'Ext.tip.ToolTip',
constructor: function (config) {
this.callParent(arguments); // 调用Ext.tip.ToolTip的构造
//...
}
});
上述重写现在必须为正常。
Ext.define('My.app.App', {
requires: [
'My.ux.CoolTip'
]
});
重写还可以包含静态:
Ext.define('My.app.BarMod', {
override: 'Ext.foo.Bar',
statics: {
method: function (x) {
return this.callParent([x * 2]); // 调用 Ext.foo.Bar.method
}
}
});
重要: 如果它在构建重写,只包括需要的类。 否则,强制执行,如目标类不包括在内。 限定
类名创建点命名空间的字符串格式,例如: 'My.very.awesome.Class', 'FeedViewer.plugin.CoolPager' 我们强烈建议遵循这个简单的约定: - 根和类的名称是'CamelCased' 骆驼拼写法 - 其他一切用小写
键 - 值对
性能适用于这一类。属性名称可以是任何有效的字符串中,除了那些在保留下面列出:
- mixins
混入
- statics
静态
- config
配置
- alias
别名
- self
自身
- singleton
单例
- alternateClassName
替代类名
- override
重写
可选的回调后执行的类的创建,执行范围(this
)将创建新的类本身。
通过如下方法,尝试摧毁任何传递进来的对象:删除所有的事件监听器、将他们从DOM树中删除(如果可以)、 调用他们的destory方法(如果可以)。这个方法主要是为 Ext.Element和Ext.Component设计的,但是 Ext.util.Observable任何子类都可以传进来。 任何数量的elements 和/或 components 都可以作为独立的参数传递进来,支持传入多参。
要销毁的Ext.Element,Ext.Component,或者其中参数的一个数组
迭代一个数组或是可迭代的值,在每个元素上调用给定的回调函数
var countries = ['Vietnam', 'Singapore', 'United States', 'Russia'];
Ext.Array.each(countries, function(name, index, countriesItSelf) {
console.log(name);
});
var sum = function() {
var sum = 0;
Ext.Array.each(arguments, function(value) {
sum += value;
});
return sum;
};
sum(1, 2, 3); // 返回 6
在回调函数中返回false,即可停止迭代过程。
Ext.Array.each(countries, function(name, index, countriesItSelf) {
if (name === 'Singapore') {
return false; // 此处中止
}
});
Ext.each 是 Ext.Array.each 的别名
将要迭代的值。 如果这个参数不可迭代,回调函数将只调用一次。
指定函数执行的(this
引用)作用域
反转迭代的顺序(从尾到头循环) 默认为false
参见 fn
参数的描述.
Ext.JSON.encode的简写形式
编码对象、 数组或其他值。
如果环境中的原生JSON编码没有被使用 (USE_NATIVE_JSON 没有设置,或环境不支持),
那么将使用ExtJS的编码。这里允许开发人员在需要序列化的类中添加 toJSON
方法,
返回有效的 JSON 表示形式的对象。
要进行编码的变量
JSON 字符串
避免传递的字符串参数被正则表达式读取。
This method has been deprecated since 4.0.0
采用 Ext.String.escapeRegex 来代替
实用的快捷方式 Ext.Loader.exclude 排除
此方法已过时。采用Ext.define来代替。
This method has been deprecated since 4.0.0
采用Ext.define来代替
从覆盖参数,或以默认的属性生成一个子类构造函数。
Ext.Array.flatten 的旧别名
递归将数组和数组中的元素转换为1维数组。
This method has been deprecated since 4.0.0
请使用 Ext.Array.flatten 代替本方法
数组
一维数组
获取单例 flyweight 元素,与传递作为活动元素的节点。
因为它是一个单例,Flyweight未含有ID,并且必须使用和丢弃在单行中。 你不可能保持和使用在多行上对这个单例的引用,因为您调用的方法可能会用到 fly,并且可能会更改该实例所指的DOM元素。
fly是Ext.dom.AbstractElement.fly的别名。
使用一次性引用的DOM元素不会由应用程序代码,或由Ext的类再次访问。 如果访问将定期处理的元素,则Ext.get 将会更合适利用由Ext.dom.Element类提供的缓存。
dom节点或id
允许可重用flyweights命名的创建防止产生冲突 (例如在内部Ext使用"_global")
单例flyweight对象(或null,如果没有发现匹配的元素)
检索Ext.dom.Element对象。get是Ext.dom.Element.get的别名。
此方法不会检索Components.此方法检索封装DOM元素的Ext.dom.Element 对象。若要检索组件按其ID,请使用Ext.ComponentManager.get。
使用简单的缓存来始终返回相同的对象。 自动修复如果一个对象通过AJAX或DOM被重新创建具有相同id。
节点的id,一个DOM节点或现有元素。
Element对象(或null,如果没有发现匹配的元素)
将当前document的body对象当作Ext.Element返回。
便于简写, see Ext.ClassManager.getClass
便于简写, 参见 Ext.ClassManager.getName 类名
将当前的HTML的document对象作为Ext.Element返回。
返回dom对象,参数可以是string(id),dom节点,或Ext.Element。 可选的 'strict' 标志需要IE浏览器, 因为他可以通过使用getElementById返回'name'和'id'元素。
下面是一些例子:
// 获取基于 id 的 dom 节点
var elDom = Ext.getDom('elId');
// 获取基于 dom 节点的 dom 节点
var elDom1 = Ext.getDom(elDom);
// 如果我们不知道是否正在运行使用一个 Ext.Element
// 或者采用Ext.getDom获得的一个 dom 节点
function(el){
var dom = Ext.getDom(el);
// DOM节点做一些事情
}
注意: 实际要找的 dom 节点需要存在(被渲染等), 调用此方法时才能成功。
将当前document的head对象当作Ext.Element返回。
获取浏览器的垂直滚动条的宽度的实用程序方法。 这取决于操作系统设置的不同,如主题或字体大小。
此方法不赞成使用,赞成使用getScrollbarSize。
This method has been deprecated
设置为true则强制重新计算值。
垂直滚动条的宽度。
在全局范围中,有用的沙盒中生成唯一Ext的引用
对页面元素生成唯一id,如果该元素已存在id,则不会再生成。
将要生成id的元素
(可选) id的前缀(默认为 "ext-gen")
生成的Id。
对数组中的每一项调用一个方法。
示例:
Ext.invoke(Ext.query("p"), "getAttribute", "id");
// [el1.getAttribute("id"), el2.getAttribute("id"), ..., elN.getAttribute("id")]
This method has been deprecated since 4.0.0
将在下一个主要版本中移除
对数组中的每一项调用此方法的结果。
迭代一个数组或一个对象。如果给定的值可迭代他的方法将委派给 Ext.Array.each,否则为Ext.Object.each。
要迭代的对象或数组。
要为每个迭代调用的函数。参见Ext.Array.each 和 Ext.Object.each,根据给定的对象类型传递给此函数, 将被用来迭代的参数的详细列表。
指定的函数执行的作用域(this
引用)。
默认值为本身进行迭代的对象。
记录一条消息。如果存在一个控制台,则它将使用。在 Opera 中,
调用 "opera.postError" 方法。在其他情况下,消息记录到一个数组"Ext.log.out"中。
附加的调试器可以观看此数组和查看日志。
日志缓冲区限制了"Ext.log.max"最大记录数(默认为 250)。
Ext.log.out
数组也可以通过在 URL 栏 (一个 "bookmarklet")
中输入以下内容并被写入到一个弹出窗口:
javascript:void(Ext.log.show());
如果传递额外的参数,则它们都加入并附加到消息中。 这是一个用于跟踪进入和退出一个函数的技术:
function foo () {
Ext.log({ indent: 1 }, '>> foo');
// 日志语句在这里或从这里调用方法将缩进
// 一步
Ext.log({ outdent: 1 }, '<< foo');
}
此方法没有在发布版本中。
Ext.Array.max 的旧别名
返回数组中的最大值
This method has been deprecated since 4.0.0
请使用 Ext.Array.max 代替本方法
数组
比较函数 如果被忽略,则使用 ">" 操作符。 注意: gt = 1; eq = 0; lt = -1
maxValue 最大值
Ext.Array.mean 的旧别名
计算数组中元素的平均值
This method has been deprecated since 4.0.0
请使用 Ext.Array.mean 代替本方法
数组
平均值
Ext.Object.merge方法的别名.
递归的合并任意数目的对象,但是不引用他们或他们的子对象。
var extjs = {
companyName: 'Ext JS',
products: ['Ext JS', 'Ext GWT', 'Ext Designer'],
isSuperCool: true,
office: {
size: 2000,
location: 'Palo Alto',
isFun: true
}
};
var newStuff = {
companyName: 'Sencha Inc.',
products: ['Ext JS', 'Ext GWT', 'Ext Designer', 'Sencha Touch', 'Sencha Animator'],
office: {
size: 40000,
location: 'Redwood City'
}
};
var sencha = Ext.Object.merge(extjs, newStuff);
// 此时extjs和sencha等于
{
companyName: 'Sencha Inc.',
products: ['Ext JS', 'Ext GWT', 'Ext Designer', 'Sencha Touch', 'Sencha Animator'],
isSuperCool: true,
office: {
size: 40000,
location: 'Redwood City',
isFun: true
}
}
合并所有给定的对象到目标对象
Ext.Array.min 的旧别名
返回数组中的最小值
This method has been deprecated since 4.0.0
请使用 Ext.Array.min 代替本方法
数组
比较函数 如果被忽略,则使用 "<" 操作符。 注意: gt = 1; eq = 0; lt = -1
minValue 最小值
创建用于范围变量和类的命名空间,使它们不是全局性的。 指定的最后一个节点的命名空间隐式创建的所有其他节点。用法:
Ext.namespace('Company', 'Company.data');
// 等价和优选上面的语法
Ext.ns('Company.data');
Company.Widget = function() { ... };
Company.data.CustomStore = function(config) { ... }; 命名空间
命名空间
命名空间中的对象。 (如果有多个参数被传递,这将是最后一个命名空间)
Ext.namespace 命名空间别名 构件 命名空间别名
创建用于范围变量和类的命名空间,使它们不是全局性的。 指定的最后一个节点的命名空间隐式创建的所有其他节点。用法:
Ext.namespace('Company', 'Company.data');
// 等价和优选上面的语法
Ext.ns('Company.data');
Company.Widget = function() { ... };
Company.data.CustomStore = function(config) { ... }; 命名空间
命名空间
命名空间中的对象。 (如果有多个参数被传递,这将是最后一个命名空间)
Validate that a value is numeric and convert it to a number if necessary. Returns the specified default value if it is not.
Ext.Number.from('1.23', 1); // returns 1.23
Ext.Number.from('abc', 1); // returns 1
This method has been deprecated since 4.0.0
Please use Ext.Number.from instead.
value, if numeric, defaultValue otherwise
用给定的值重写指定target
的成员。
如果target
是一个类使用Ext.define声明,
此类的override
方法(参见 Ext.Base.override)
在给定的overrides
被调用。
如果target
是一个函数,它被假定为一个构造函数,
并将overrides
的内容应用于其Ext.apply的prototype
的使用。
如果 target
是类的一个实例声明并使用 Ext.define,
该 overrides
仅应用于那个实例。既然这样,
方法是经过特殊处理的,以允许他们使用 Ext.Base.callParent。
var panel = new Ext.Panel({ ... });
Ext.override(panel, {
initComponent: function () {
// 额外的处理...
this.callParent();
}
});
如果 target
不是这些,overrides
应用于 target
使用Ext.apply。
请参阅 Ext.define 和 Ext.Base.override 进一步的详细信息。
将一个集合划分成两个集合: 一个正确的集合和一个错误的集合。
示例 1:
Ext.partition([true, false, true, true, false]);
// returns [[true, true, true], [false, false]]
示例 2:
Ext.partition(
Ext.query("p"),
function(val){
return val.className == "class1"
}
);
// 含有"class1"类名的段落元素返回正确的集合,
// 没有包含那个类名的则返回错误的集合。
This method has been deprecated since 4.0.0
将在下一个主要版本中移除
[正确集的数组, 错误集的数组]
从提供'fn'创建一个新的函数,其中的参数预先设置到 'args'。 新的参数传递到新创建的回调函数中,调用时追加到预先设定的参数之后。 创建的回调时,这是特别有用的。
示例:
var originalFunction = function(){
alert(Ext.Array.from(arguments).join(' '));
};
var callback = Ext.Function.pass(originalFunction, ['Hello', 'World']);
callback(); // 执行结果为 'Hello World'
callback('by Me'); // 执行结果为 'Hello World by Me'
新的回调函数
Ext.Array.pluck 的旧别名
获取数组中每个元素的制定属性值. 示例:
Ext.Array.pluck(Ext.query("p"), "className"); // [el1.className, el2.className, ..., elN.className]
This method has been deprecated since 4.0.0
请使用 Ext.Array.pluck 代替本方法
Ext.PluginManager.registerType的简写形式
用CSS/XPath选择器选择选择一个DOM节点数组
若浏览器支持,则使用 document.querySelectorAll, 否则回复使用 Ext.dom.Query.jsSelect 来工作.
别名为 query.
查询的选择/路径
查询的起始点
Defaults to: document
一个简单选择器匹配的,可以是"select"或"simple" (只有当jsSelect方法调用时才有效)
Defaults to: "select"
一个DOM元素数组(querySelectorAll
的返回值,不只是一个NodeList).
用于创建模型类的旧方法。改为使用:
Ext.define("MyModel", {
extend: "Ext.data.Model",
fields: []
});
This method has been deprecated since 4.0.0
使用 define 来代替。
新注册的模型
根据给定的id和配置来创建一个新的store,然后通过Store Manager来进行注册。 用法示例:
Ext.regStore('AllUsers', {
model: 'User'
});
// store现在可以轻松地在整个应用程序中使用
new Ext.List({
store: 'AllUsers',
... other config
});
移除document的DOM节点。
从文档中删除该元素,移除所有的DOM事件监听器,
并删除缓存的引用。 从该元素中删除所有 DOM 事件侦听器。
如果 Ext.enableNestedListenerRemoval 设置为true
,
然后从该元素的所有子节点也移除 DOM 事件侦听器。
如果传递 body 节点则将被忽略。
要移除的节点
实用的别名 Ext.Loader.require. 请参见引入的Ext.Loader文件的例子。
传入一个CSS选择符的参数,然后依据该CSS选择符从当前元素下面,形成期待匹配子节点的集合,也就是"选择"的操作,最后以一个Ext.CompositeElement类型的组合元素的形式返回(因为id的元素唯一的,所以选择符不应是id的选择符)。
CSS选择符
Ext.Array.sum 的旧别名
计算数组中元素的和
This method has been deprecated since 4.0.0
请使用 Ext.Array.sum 代替本方法
数组
同步版本的require,实用的别名Ext.Loader.syncRequire。 同步请求
将一个可迭代元素(具有数字下标和length属性)转换为一个真正的数组
function test() {
var args = Ext.Array.toArray(arguments),
fromSecondToLastArgs = Ext.Array.toArray(arguments, 1);
alert(args.join(' '));
alert(fromSecondToLastArgs.join(' '));
}
test('just', 'testing', 'here'); // 提示 'just testing here';
// 提示 'testing here';
Ext.Array.toArray(document.getElementsByTagName('div')); // 将把 NodeList 转换成一个数组
Ext.Array.toArray('splitted'); // returns ['s', 'p', 'l', 'i', 't', 't', 'e', 'd']
Ext.Array.toArray('splitted', 0, 3); // returns ['s', 'p', 'l']
Ext.toArray 是 Ext.Array.toArray 的别名
可迭代的对象
从0开始的索引,表示要转换的起始位置. 默认为 0
从1开始的索引,表示要转换的结束位置.
默认为要迭代元素的末尾位置。
array
将数组转换为一个句子,加入了指定连接器 - 例如:
Ext.toSentence(['Adama', 'Tigh', 'Roslin']); //'Adama, Tigh and Roslin'
Ext.toSentence(['Adama', 'Tigh', 'Roslin'], 'or'); //'Adama, Tigh or Roslin'
This method has been deprecated since 4.0.0
将在下一个主要版本中移除
句子的字符串
typeOf旧的别名
以字符串格式返回给定变量的类型。可能值的列表:
undefined
: 如果给定的值是 undefined
null
: 如果给定的值是 null
string
: 如果给定的值是一个字符串number
: 如果给定的值是一个数值boolean
: 如果给定的值是一个布尔值date
: 如果给定的值是一个 Date
对象function
: 如果给定的值是function的引用object
: 如果给定的值是一个对象array
: 如果给定的值是一个数组regexp
: 如果给定的值是一个正则表达式element
: 如果给定的值是一个 DOM 元素textnode
: 如果给定的值是一个 DOM 文本节点和包含空格以外的东西whitespace
: 如果给定的值是一个 DOM 文本节点和包含只有空格This method has been deprecated since 4.0.0
使用typeOf来代替
以字符串格式返回给定变量的类型。可能值的列表:
undefined
: 如果给定的值是 undefined
null
: 如果给定的值是 null
string
: 如果给定的值是一个字符串number
: 如果给定的值是一个数值boolean
: 如果给定的值是一个布尔值date
: 如果给定的值是一个 Date
对象function
: 如果给定的值是function的引用object
: 如果给定的值是一个对象array
: 如果给定的值是一个数组regexp
: 如果给定的值是一个正则表达式element
: 如果给定的值是一个 DOM 元素textnode
: 如果给定的值是一个 DOM 文本节点和包含空格以外的东西whitespace
: 如果给定的值是一个 DOM 文本节点和包含只有空格Ext.Array.unique 的旧别名
返回一个去掉重复元素的新数组
This method has been deprecated since 4.0.0
请使用 Ext.Array.unique 代替本方法
结果
Ext.String.urlAppend的曾用别名
将内容追加到URL的查询字符串, 根据处理逻辑来判断放置一个'?'或'&'符号。
This method has been deprecated
所生成的URL。
Ext.Object.fromQueryString的别名.
将查询字符串转换回对象。
不递归:
Ext.Object.fromQueryString("foo=1&bar=2"); // 返回 {foo: 1, bar: 2}
Ext.Object.fromQueryString("foo=&bar=2"); // 返回 {foo: null, bar: 2}
Ext.Object.fromQueryString("some%20price=%24300"); // 返回 {'some price': '$300'}
Ext.Object.fromQueryString("colors=red&colors=green&colors=blue"); // 返回 {colors: ['red', 'green', 'blue']}
递归:
Ext.Object.fromQueryString(
"username=Jacky&"+
"dateOfBirth[day]=1&dateOfBirth[month]=2&dateOfBirth[year]=1911&"+
"hobbies[0]=coding&hobbies[1]=eating&hobbies[2]=sleeping&"+
"hobbies[3][0]=nested&hobbies[3][1]=stuff", true);
// 返回
{
username: 'Jacky',
dateOfBirth: {
day: '1',
month: '2',
year: '1911'
},
hobbies: ['coding', 'eating', 'sleeping', ['nested', 'stuff']]
}
This method has been deprecated since 4.0.0
请使用Ext.Object.fromQueryString代替本方法
要解码的查询字符串
是否递归的解码字符串,这种格式在 PHP / Ruby on Rails服务器中被类似地支持.
Defaults to: false
将一个对象转换成编码的查询字符串
不递归:
Ext.Object.toQueryString({foo: 1, bar: 2}); // 返回 "foo=1&bar=2"
Ext.Object.toQueryString({foo: null, bar: 2}); // 返回 "foo=&bar=2"
Ext.Object.toQueryString({'some price': '$300'}); // 返回 "some%20price=%24300"
Ext.Object.toQueryString({date: new Date(2011, 0, 1)}); // 返回 "date=%222011-01-01T00%3A00%3A00%22"
Ext.Object.toQueryString({colors: ['red', 'green', 'blue']}); // 返回 "colors=red&colors=green&colors=blue"
递归:
Ext.Object.toQueryString({
username: 'Jacky',
dateOfBirth: {
day: 1,
month: 2,
year: 1911
},
hobbies: ['coding', 'eating', 'sleeping', ['nested', 'stuff']]
}, true); // 返回如下字符串(换行和url-decoded是为了便于阅读的目的):
// username=Jacky
// &dateOfBirth[day]=1&dateOfBirth[month]=2&dateOfBirth[year]=1911
// &hobbies[0]=coding&hobbies[1]=eating&hobbies[2]=sleeping&hobbies[3][0]=nested&hobbies[3][1]=stuff
This method has been deprecated since 4.0.0
请使用Ext.Object.toQueryString代替本方法
要编码的对象
是否递归的翻译对象,这种格式在 PHP / Ruby on Rails服务器中被类似地支持.
Defaults to: false
queryString
返回一个默认值的实用程序方法,如果传递的值是空的。
该值被认为是空的如果是:
allowBlank
参数为true
)This method has been deprecated since 4.0.0
采用 valueFrom 来代替
要测试的值
如果原始值为空则返回该值
设置为true允许零长度字符串,以确认为非空。
Defaults to: false
如果非空则返回value,否则返回defaultValue
便于速记创建一个微件的xtype配置对象。 参见Ext.ClassManager.instantiateByAlias.
var button = Ext.widget('button'); // 相当于Ext.create('widget.button');
var panel = Ext.widget('panel', { // 相当于Ext.create('widget.panel')
title: 'Panel'
});
var grid = Ext.widget({
xtype: 'grid',
...
});
如果一个component实例被传递,它只是简单地返回。
微件的实例
将多个数组压缩为一个数组。
示例 1:
Ext.zip([1,2,3],[4,5,6]); // [[1,4],[2,5],[3,6]]
示例 2:
Ext.zip(
[ "+", "-", "+"],
[ 12, 10, 22],
[ 43, 15, 96],
function(a, b, c){
return "$" + a + "" + b + "." + c
}
); // ["$+12.43", "$-10.15", "$+22.96"]
This method has been deprecated since 4.0.0
将在下一个主要版本中移除
压缩后的集合。