extjs 4.1.0控制器的init函数不会被调用

时间:2012-11-13 14:20:21

标签: javascript extjs javascript-framework extjs4.1 extjs-mvc

我对javascript和extjs都很新,我在尝试运行extjs 4.1 MVC Architecture教程的步骤时遇到了这个问题。 Evereything在开始时工作,但当我尝试将控制器添加到应用程序时出现问题。既不调用应用程序启动功能也不调用控制器init函数。我使用了这里的示例代码here ,但我无法让“定义控制器”步骤起作用。它发现Users.js没有错误消息,仍然不会调用控制器初始化函数。如果我删除'controllers:['Users'],将调用应用程序启动。我缺少什么想法?

app.js:

Ext.application({
requires: ['Ext.container.Viewport'],
name: 'Account Manager',

appFolder: 'app',

controllers: ['Users'],

launch: function() {...}

Users.js:

Ext.define('app.controller.Users', {
extend: 'Ext.app.Controller',

init: function() {
        console.log('Initialized Users!');
}
});

感谢您的时间。

1 个答案:

答案 0 :(得分:1)

您的错误是(Ext.Application)

name: 'Account Manager',

以下是 name property 的API链接。

将其更改为:

name: 'app', // I would use camelcase here

说明:

不允许在应用程序名称中使用空格。此外,它更像是命名空间,而不是名称。您必须在所有类中使用它(这将是您的视图,控制器模型和存储的命名空间)。