如何在新(ember-1.0.0-pre.4)版本中按名称调用Controllers方法

时间:2013-02-07 13:30:07

标签: ember.js

我使用Ember.ready函数添加一些像这样的键盘绑定https://github.com/greggyNapalm/firebat-overlord/blob/master/web_static/static/js/app/app.js#L24有没有正确的方法在新版本中执行此操作,因为不能再通过其名称调用方法了?

1 个答案:

答案 0 :(得分:1)

从这个角度来看,做这种事情的最佳地点。根据您的示例,在这种情况下适当的视图可能是TestsView。从那里,您可以在插入/删除视图时绑定和取消绑定键盘绑定。例如:

var TestsView = Ember.View.extend({
    templateName:  'testsTemplate',
    didInsertElement: function() {
       console.log("Controller: " + this.get('controller').toString());
       var self = this;
       Mousetrap.bind('ctrl+right', function() {

         self.get('controller').goToPage('next');
       });
    },
    wilLRemoveElement: function() {
       Mousetrap.unbind('ctrl+right');
    }
});

要查看设置的控制器,请尝试添加console.log("Controller: " + self.get('controller').toString());