所以我今天开始使用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示例的同时构建了这个示例,并且不知道为什么这不起作用。
答案 0 :(得分:2)
我找到了答案,这太简单了。
要调用主app逻辑,我需要使用require()
NOT requirejs()