我使用ExtJS 4构建了一个简单的UI。我创建了两个名为Main
和Menu
的视图类,它们位于视图文件夹中。之后我按照以下方式包括这些课程。但我遇到了一个错误。 TypeError: item.onAdded is not a function
已在控制台中打印出来。这是我的代码
Main.js
Ext.define('Ext1.view.Main', {
extend: 'Ext.container.Container',
requires:[
'Ext.tab.Panel',
'Ext.layout.container.Border'
],
items : [
{
xtype : 'menume'
}
]
});
Menu.js
Ext.define('Ext1.view.Menu',{
alias : 'widget.menume',
title: 'User Form',
height: 150,
width: 300,
bodyPadding: 10,
defaultType: 'textfield',
items: [
{
fieldLabel: 'First Name',
name: 'firstName'
},
{
fieldLabel: 'Last Name',
name: 'lastName'
},
{
xtype: 'datefield',
fieldLabel: 'Date of Birth',
name: 'birthDate'
}
]
});
的application.js
Ext.define('Ext1.Application', {
name: 'Ext1',
extend: 'Ext.app.Application',
views: [
'Ext1.view.Menu', 'Ext1.view.Main'
],
controllers: [
// TODO: add controllers here
],
stores: [
// TODO: add stores here
]
});
为什么我有这个错误?
答案 0 :(得分:2)
因为Ext1.view.Menu
没有扩展任何内容。它至少需要(有物品)容器。
答案 1 :(得分:0)
Ext.define('Ext1.view.Menu',{
extend: 'Ext.menu.Menu'// add this
alias : 'widget.menume',
title: 'User Form',
height: 150,
width: 300,
bodyPadding: 10,
defaultType: 'textfield',
items: [
{
fieldLabel: 'First Name',
name: 'firstName'
},
{
fieldLabel: 'Last Name',
name: 'lastName'
},
{
xtype: 'datefield',
fieldLabel: 'Date of Birth',
name: 'birthDate'
}
]
});