视图控制器未被调用

时间:2013-11-11 19:36:26

标签: ember.js

我在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();
    }
});

为什么会发生这种情况?

2 个答案:

答案 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' });
  });
});