我在Ext JS 5中有一个扩展ParentPanel
的父类Ext.form.Panel
。父面板大致定义如下:
Ext.define('...ParentPanel', {
config : {
isItTrue : true
},
dockedItems: [],
initComponent : function () {
var me = this;
//If some evaluation is true...
if (isItTrue) {
me.dockedItems.push({
// the components I am trying to add...
});
this.callParent():
}
//....
基本问题是,任何扩展ParentPanel
的类都会调用initComponent
函数,并将这些项添加到父 dockedItems
配置中。对于每个true
评估(因此我最终会重复,因为每个孩子都在共享父级的dockedItems
配置。)。我想要做的只是将项目添加到继承类dockedItems
配置中,而不是父项。
这甚至可能是Ext JS吗?如果是这样,了解设计问题,我将如何解决这个问题?
答案 0 :(得分:1)
这样的事情:
initComponent: function () {
this.dockedItems = [];
// ...
}
ExtJS不会改变Javascript的性质......