1

所以我今天开始使用 EmberJS。

// js/main.js
require.config({
    baseUrl:'js/',
    paths:{
        ember: 'libs/emberjs/ember-0.9.8.1',
        text: 'libs/require/text',
    }
});

// Start the main app logic.
requirejs([
        'ember',
        'app/controller/users'
    ],
    function(ember, UsersController) {
        App = Em.Application.create();
        console.log(UsersController); // undefined
    }
);

// My Controller
// js/app/controller/users.js
define('app/controllers/users', [
    'text!app/views/users/index.handlebar'
],
function( UsersIndexTemplate ) {
    return Ember.Object.create({
        indexView: Ember.View.create({
            template: Ember.Handlebars.compile( UsersIndexTemplate )
        }),
        // Activates the views and other initializations
        init: function() {
            this.get( 'indexView' ).appendTo( '#content' );
        }
    });
});

我的问题是,为什么控制器未定义?我在阅读 TodoMVC 示例时构建了它,但不明白为什么它的工作方式不同。

4

1 回答 1

2

我找到了答案,太简单了。

要调用主应用程序逻辑,我需要使用require()NOTrequirejs()

于 2012-06-21T09:27:33.040 回答