我有以下代码,它为我的应用生成基本布局:
tabpanel = new Ext.TabPanel({
fullscreen: false,
ui : 'dark',
sortable : false,
tabBarDock: 'bottom',
cardSwitchAnimation: 'flip',
items: [{
title: 'Tab 1',
html : '1',
cls : 'card1',
icon : 'tab1'
}]
});
lists.views.Viewport = Ext.extend(Ext.Panel,{
fullscreen: true,
layout: 'fit',
dockedItems: [{
xtype: 'toolbar',
dock: "top",
title: 'title'
}],
items: [tabpanel],
initComponent: function() {
this.tabpanel.add(new lists.views.ItemLists());
lists.views.Viewport.superclass.initComponent.apply(this, arguments);
},
});
这不起作用,可能是因为Viewport面板内的TabPanel不能像这样指向。我搜索了sencha文档,但我找不到如何添加
new lists.views.ItemLists()
到tabpanel,而tabpanel又位于
内lists.views.Viewport
此外,我想在我的视口之前(甚至在它之后)声明我想要添加到我稍后可能添加的特定其他面板的其他内容。实现这一目标的最佳方法是什么?
关于如何做到这一点的任何想法? 谢谢!
答案 0 :(得分:0)
如果您从this.
方法中取消tabpanel
initComponent
,那么它应该有效,因为tabpanel
变量是全局变量。
或者,您可以通过items
属性访问Viewport的项目,例如
initComponent: function(){
this.items.get(0).add(new lists.views.ItemLists());
lists.views.Viewport.superclass.initComponent.apply(this, arguments);
}
希望这有帮助
斯图尔特