У меня есть приложение MVC Sencha Touch, которое я создаю, и у меня возникают проблемы с правильной работой TabPanel. Проблема в том, что когда у меня такой PosViewport.js, все работает нормально:
touch.views.PosViewport = new Ext.extend(Ext.TabPanel, {
initComponent: function () {
console.log("inside initComponent() of PosViewport.js");
touch.views.PosViewport.superclass.initComponent.call(this);
},
tabBar: {
dock: 'bottom',
layout: {
pack: 'center'
}
},
layout: 'fit',
scroll: 'vertical',
items: [
{
title: 'Reciepts',
iconCls: 'bookmarks',
html: 'one'
},
{
title: 'POS',
iconCls: 'Favorites',
html: 'two'
}
]
});
Здесь все отлично! Панель вкладок отображается внизу, она идеально подходит, и я могу без проблем переключаться между ними.
Однако вместо того, чтобы хранить эти панели в моем файле PosViewport.js, давайте переместим их в два отдельных файла:
Вид1.js:
touch.views.View1 = new Ext.extend(Ext.Panel, {
initComponent: function () {
touch.views.View1.superclass.initComponent.call(this);
},
layout: 'fit',
scroll: 'vertical',
fullscreen : true,
title: 'Reciepts',
iconCls: 'bookmarks',
html: 'panel one'
});
и View2.js:
touch.views.View2 = new Ext.extend(Ext.Panel, {
initComponent: function () {
touch.views.View2.superclass.initComponent.call(this);
},
layout: 'fit',
scroll: 'vertical',
fullscreen : true,
title: '2',
iconCls: 'bookmarks',
html: 'panel two'
});
Я добавляю оба новых представления в свой index.html. Теперь я обновляю свой PosViewport.js, чтобы указывать на новые представления:
touch.views.PosViewport = new Ext.extend(Ext.TabPanel, {
initComponent: function () {
console.log("inside initComponent() of PosViewport.js");
touch.views.PosViewport.superclass.initComponent.call(this);
},
tabBar: {
dock: 'bottom',
layout: {
pack: 'center'
}
},
layout: 'fit',
scroll: 'vertical',
items: [ touch.views.View1, touch.views.View2]
});
И все идет к черту. Нижняя панель вкладок не видна, так как на странице видна только крошечная часть верхней части. Панели вообще не отображаются, я вообще не вижу их HTML-содержимого.
Что здесь происходит? Я совершенно не понимаю, почему он так себя ведет. Любые указатели в правильном направлении очень ценятся, спасибо!