无法让ExtJS写入控制台

时间:2013-08-19 22:24:09

标签: extjs

我只是想开始使用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

2 个答案:

答案 0 :(得分:1)

我不确定你为什么要尝试使用Ext JS 4.1.3,当前版本是4.2.1。此外,目录结构错误:index.htmlapp.js都应位于顶层目录中:

+
|- app +
|      |- controller +
|                    |- Users.js
|- app.js
|- index.html

Ext.application调用中的appFolder属性指向 relative index.html的目录。这里没有魔法。

答案 1 :(得分:0)

在应用定义之前加入此内容:

Ext.Loader.setConfig({ enabled: true });