Javascript 在类上配置别名需要什么?
我想知道为什么我们需要在ExtJS中的类上配置别名?它提供了什么好处?Javascript 在类上配置别名需要什么?,javascript,extjs,extjs4,Javascript,Extjs,Extjs4,我想知道为什么我们需要在ExtJS中的类上配置别名?它提供了什么好处?xtype和alias用于从其他对象中获取对对象的引用,而不是自己实例化它们或将它们放入变量中 由于Ext.form.TextField具有xtype“TextField”,因此我们可以执行以下操作: items: [{ xtype: 'textfield', autoWidth: true, fieldLabel: 'something' }] 这样定义视图有很大的好处。通过这种方式,框架将创建对象 您也
xtype
和alias
用于从其他对象中获取对对象的引用,而不是自己实例化它们或将它们放入变量中
由于Ext.form.TextField
具有xtype
“TextField”,因此我们可以执行以下操作:
items: [{
xtype: 'textfield',
autoWidth: true,
fieldLabel: 'something'
}]
这样定义视图有很大的好处。通过这种方式,框架将创建对象
您也可以稍后使用Ext.ComponentQuery.query()
例如:
Ext.create('MyApp.view.MyButton', {
xtype: 'mybutton',
.....
});
在代码的后面,如果执行以下操作:
var buttonArray = Ext.ComponentQuery.query('mybutton');
更多信息:xtype
和alias
用于从其他对象中获取对对象的引用,而不是自己实例化它们或将它们放入变量中
由于Ext.form.TextField
具有xtype
“TextField”,因此我们可以执行以下操作:
items: [{
xtype: 'textfield',
autoWidth: true,
fieldLabel: 'something'
}]
这样定义视图有很大的好处。通过这种方式,框架将创建对象
您也可以稍后使用Ext.ComponentQuery.query()
例如:
Ext.create('MyApp.view.MyButton', {
xtype: 'mybutton',
.....
});
在代码的后面,如果执行以下操作:
var buttonArray = Ext.ComponentQuery.query('mybutton');
更多信息:第一个最简单但有价值的好处是,您不需要键入可能很长的类名,但在需要使用类时可以使用短(er)别名 假设我们需要在布局中使用上述类 如果没有别名,我们需要键入: Ext.create('Ext.container.container'{ 布局:'vbox' ,项目:[ Ext.create('MyApp.view.MyGridView'{ //配置
})
] }); Ext.create('Ext.container.container'{ 布局:'vbox' ,项目:[ Ext.create('MyApp.view.MyGridView'{ //配置
})
] }); 使用alias,我们键入: Ext.create('Ext.container.container'{ 布局:'vbox' ,项目:[{ xtype:'mygrid' //配置 }] }); Ext.create('Ext.container.container'{ 布局:'vbox' ,项目:[{ xtype:'mygrid' //配置 }] }); 后者比前者少大约20次击键。现在想象一下,您需要在更大的应用程序中使用您的类数百次。很明显,xtype节省了大量的打字时间,更不用说减少长名称中的打字错误风险了 其次,还有一个非常有价值的好处,就是Ext.create无条件地实例化该类,无论是否需要。在一个大的应用程序中,可以有许多视图、选项卡面板或卡片布局,用户可能永远不会点击,或者很少点击
换句话说,某些已定义的类永远不会被实例化,或者可以等到用户需要它们时再实例化。因此,xtype可以节省内存,这在现代计算机中并不重要,因为实例化的Ext/Touch类不会占用千兆字节 我想提到的最后一个好处(这一点非常重要)是大大提高了代码的可读性和可维护性。代码不是只写一次就忘记了,而是由许多开发人员阅读、调试和修改的,因此使代码更短、更好、更容易理解的一切都很重要
信用证:-第一个最简单但有价值的好处是,您不需要键入可能很长的类名,但可以在需要使用该类时使用短(er)别名 假设我们需要在布局中使用上述类 如果没有别名,我们需要键入: Ext.create('Ext.container.container'{ 布局:'vbox' ,项目:[ Ext.create('MyApp.view.MyGridView'{ //配置
})
] }); Ext.create('Ext.container.container'{ 布局:'vbox' ,项目:[ Ext.create('MyApp.view.MyGridView'{ //配置
})
] }); 使用alias,我们键入: Ext.create('Ext.container.container'{ 布局:'vbox' ,项目:[{ xtype:'mygrid' //配置 }] }); Ext.create('Ext.container.container'{ 布局:'vbox' ,项目:[{ xtype:'mygrid' //配置 }] }); 后者比前者少大约20次击键。现在想象一下,您需要在更大的应用程序中使用您的类数百次。很明显,xtype节省了大量的打字时间,更不用说减少长名称中的打字错误风险了 其次,还有一个非常有价值的好处,就是Ext.create无条件地实例化该类,无论是否需要。在一个大的应用程序中,可以有许多视图、选项卡面板或卡片布局,用户可能永远不会点击,或者很少点击
换句话说,某些已定义的类永远不会被实例化,或者可以等到用户需要它们时再实例化。因此,xtype可以节省内存,这在现代计算机中并不重要,因为实例化的Ext/Touch类不会占用千兆字节 我想提到的最后一个好处(这一点非常重要)是大大提高了代码的可读性和可维护性。代码不是只写一次就忘记了,而是由许多开发人员阅读、调试和修改的,因此使代码更短、更好、更容易理解的一切都很重要
信用证:-您能告诉我们您尝试了什么,以便人们可以帮助您吗?请检查.Ext.define('MyApp.view.MyAppView',{extend:'Ext.grid.Panel',别名:'widget.MyApp'});为什么我们需要这个“别名”,它有什么好处???请检查您是否可以向我们展示您尝试过的内容,以便人们可以帮助您?请检查.Ext.define('MyApp.view.MyAppView',{extend:'Ext.grid.Panel',别名:'widget.MyApp'});为什么我们需要这个“别名”,它有什么好处???勾选“因此,xtype可以节省内存”是不正确的。实例是在容器初始化时创建的,无论它们是否为X类型