这是一个我想要实例化的简单视图:
Ext.define('myapp.view.Home',{
extend 'Ext.Panel',
xtype : 'testpanel' ,
config: {
title:'home',
iconCls:'home',
cls : 'home',
html: [
'<h1> Hello Guys </h1>',
'<p> some text goes here </p>'
].join("")
}
});
我已将视图添加到控制器,如下所示:
Ext.define('myapp.controller.Main', {
extend : 'Ext.app.Controller',
views : ['Home'],
...
}
我在我的应用程序中使用了xtype,如下所示:
items:[{
xtype : 'testpanel'
},
我仍然收到此错误:
未捕获错误:[Ext.createByAlias]无法创建无法识别的别名实例:widget.testpanel
感谢您的帮助。
答案 0 :(得分:16)
我想你忘了在app.js中添加这个视图 - Ext.Application的“views”数组。请检查。
答案 1 :(得分:4)
可以通过添加它来修复吗?
requires:[
'myapp.view.Home'
]
答案 2 :(得分:3)
您需要使用带有小部件前缀的别名属性。
Ext.define('myapp.view.Home',{
extend 'Ext.Panel',
alias : 'widget.testpanel' ,
config: {
title:'home',
iconCls:'home',
cls : 'home',
html: [
'<h1> Hello Guys </h1>',
'<p> some text goes here </p>'
].join("")
}
});
答案 3 :(得分:1)
我认为您需要检查文件是否在正确的目录中。
http://docs.sencha.com/ext-js/4-1/#!/guide/application_architecture
在这里你可以找到裁判来理解可能出错的地方。
检查对象myapp.view.Home是否在目录app / view / Home.js
中别名必须像别名:'widget.testpanel'
和a要求:['myapp.view.Home'],
你甚至可以发布app.js文件吗?答案 4 :(得分:1)
当xtype配置/属性值(正在创建的组件/对象实例)与类xtype config / property值的xtype配置的实际名称不匹配时,我收到此异常。实例是其父组件的items config中的组件的延迟实现。
答案 5 :(得分:-1)
您可以通过在视图中添加控制器类来修复。
controller:&#39; ControllerClass&#39;,