Я написал программу в sencha, которая отлично работала. Поскольку мои файлы становятся слишком большими, я пытаюсь разбить их на несколько небольших файлов, используя xtypes.Непринято Попытка создать компонент со статусом xtype, который еще не был зарегистрирован:
В принципе, я пытаюсь иметь один файл main.js Вызов xtype list.js вызов другой xtype details.js также вызывая необходимые xtypes ...
Моя проблема заключается в том, что с тех пор я начал разделять мой код, я получаю эту ошибку: Uncaught Attempting to create a component with an xtype that has not been registered
.
Я уверен, что каждый файл правильно связан в моем index.html.
Вот пример моего кода:
Details.js
var details = Ext.extend(Ext.Panel, {
layout: 'card',
cardSwitchAnimation: 'slide',
initComponent: function(){
Ext.apply(this,{
items:[]
})
details.superclass.initComponent.apply(this,arguments);
}
});
Ext.reg('details', details);
List.js
var Details = {xtype: 'details'};
var ListWrapper = new Ext.Panel({
id: "listwrapper",
layout: 'fit',
items: [List],
dockedItems: [homeTitleBar]
});
var Home = new Ext.Panel({
id: "home",
layout: 'card',
cardSwitchAnimation: 'slide',
items: [ListWrapper, Details]
});
var HomeTab = Ext.extend(Ext.Panel, {
iconCls: 'home',
title: 'Home',
layout: 'card',
initComponent: function() {
Ext.apply(this,{
items: [Home]
});
HomeTab.superclass.initComponent.apply(this,arguments);
}
});
Ext.reg('home', HomeTab);
Main.js
var menuBar = Ext.extend(Ext.TabPanel, {
layout: 'card',
cardSwitchAnimation: 'slide',
fullscreen: true,
tabBar: {
dock: 'bottom',
layout: {pack: 'center'}
},
items:[
{xtype: 'home'}
]
});
Ext.reg("menuBar", menuBar);