考虑这样的代码并注意config
属性。
Ext.define('TouchTomatoes.view.WelcomeOverlay', {
extend: 'Ext.Panel',
xtype: "main",
config: {
cls: "welcomeOverlay",
html: [
"<div class='message'>",
"<h2>Welcome to <em>Touch Tomatoes</em></h2>",
"<p>Browse any of our lists by selecting a tab at the bottom, or swiping across the app. <br/>You can find a movie in our search section.</p>",
"<div class='tap'>Tap anywhere to begin</div>",
"</div>"
].join(""),
hidden:true
},
initialize: function() {
this.element.on({
tap: {
fn: function() {
this.hide();
},
single:true,
scope:this
}
})
}
});
到目前为止,我只是将配置项直接放入类定义中,一切都会起作用。实际上我认为这是唯一的方法(因为例如API中未记录config
属性)。任何人都能说出一种不同的方式吗?
同样适用于那里的initialize
方法,我通常会使用initComponent
,为什么ExtJS中有这么多替代名称和方法?
答案 0 :(得分:1)
Sencha Touch和ExtJS中有其他名称和方法,通常是为了使代码向下兼容。但目前的版本只有一种方式可以使用。
请务必阅读有关如何处理事情的最新博文。
答案 1 :(得分:1)
config
选项应该用于为自定义属性创建自己的getter和setter。
所以,假设你在那里添加了另一个属性:type: 'userform'
。在面板创建过程之后,您可以使用getType
和setType
方法为该面板提供。