didInsertElement触发两次

时间:2014-01-19 01:37:24

标签: ember.js

出于某种原因,我的观点是两次触发didInsertElement。我的代码没有什么特别之处。我在模板中使用{{view}}帮助器调用视图,该模板使用{{render“templateName”}}在使用应用程序出口显示的另一个模板中呈现。

App.PlaybackView = Ember.View.extend({
    didInsertElement: function() {
        Ember.$(document).on('keyup', { _self: this }, this.handler);
    },
    handler: function(e) {
        if(e.which == 37) e.data._self.prev();
        if(e.which == 39) e.data._self.next();
    },
    prev: function() {
        this.get('controller').send('prev');
    },
    next: function(controller) {
        this.get('controller').send('next');
    }
});

此外,如果我使用{{partial}}帮助器来显示父模板,那么它只会被触发一次。但是,通过这种方式,我无法访问我想要的控制器。

0 个答案:

没有答案