Как запустить действие в Ember Controller afterRender

Я новичок в тлеющих рамках. Я просто хочу выполнить функцию, которая определена внутри ловушки действий после завершения рендеринга.

var Controller = Ember.Controller.extend({
  actions: {
    foo: function() {
        console.log("foo");
    }
  }
});
Ember.run.schedule("afterRender",this,function() {
  this.send("foo");
}

Но приведенный выше код не работает. Я просто хочу знать, возможно ли запустить foo() afterRender?

Ответ 1

Вы можете использовать init:

App.Controller = Ember.Controller.extend({
  init: function () {
    this._super();
    Ember.run.schedule("afterRender",this,function() {
      this.send("foo");
    });
  },

  actions: {
    foo: function() {
      console.log("foo");
    }
  }
});