我只是想开始使用ExtJS,但文档不是很有帮助。
我确实已经复制并粘贴了他们的一个示例,并且它不会调用控制器的init
函数。我甚至按照推荐的目录布局
项目组织:
my_app
|-- // node.js stuff
|--public
|--app
| |--controller
| |--Users.js
|
|--ext-4
| |--extjs
| |--app.js
| |--index.html
|
|--app.js
app.js
Ext.application({
requires: ['Ext.container.Viewport'],
name: 'AM',
appFolder: 'app',
controllers: [
'Users'
],
launch: function() {
Ext.create('Ext.container.Viewport', {
layout: 'fit',
items: [
{
xtype: 'panel',
title: 'Users',
html : 'List of users will go here'
}
]
});
}
});
Users.js
Ext.define('AM.controller.Users', {
extend: 'Ext.app.Controller',
init: function() {
this.control({
'viewport > panel': {
render: this.onPanelRendered
}
});
},
onPanelRendered: function() {
console.log('The panel was rendered');
}
});
完全 getting-started docs中的内容。页面加载和显示,但控制器不是,这没有输出到控制台。救命?!??试过Chrome和Firefox
答案 0 :(得分:1)
我不确定你为什么要尝试使用Ext JS 4.1.3,当前版本是4.2.1。此外,目录结构错误:index.html
和app.js
都应位于顶层目录中:
+
|- app +
| |- controller +
| |- Users.js
|- app.js
|- index.html
Ext.application调用中的appFolder
属性指向 relative 到index.html
的目录。这里没有魔法。
答案 1 :(得分:0)
在应用定义之前加入此内容:
Ext.Loader.setConfig({ enabled: true });