我在ember中设置了一个视图,并在页面上呈现它,就像这样
App.TestView = Ember.View.extend({
template: Ember.Handlebars.compile('<h1>Heading</h1>')
});
{{view App.TestView}}
但如果我创建控制器没有任何反应
App.TestController = Ember.Controller.extend({
init: function() {
console.log('CONTROLLER HERE');
this._super();
}
});
为什么会发生这种情况?
答案 0 :(得分:1)
您错过了示例工作的路线:http://jsbin.com/IGIvuhe/2/edit
添加它,它将起作用:
App.Router.map(function(){
this.route("test", {path: '/'});
});
希望它有所帮助。
答案 1 :(得分:1)
手动创建视图时(就像您正在做的那样),它不使用测试控制器。如果您点击测试路线,它将使用相关的测试控制器和测试视图。
根据您的评论,您可能希望设置一些路线并让它们使用相关的控制器和视图。
看看这个:http://emberjs.com/guides/routing/defining-your-routes/
也许是这样的
App.Router.map(function() {
this.resource('gallery', { path: '/gallery/:gallery_id' }, function() {
this.resource('photo', { path: 'photo/:photo_id' });
});
});