如何在Ember Controller afterRender中运行操作

时间:2015-06-17 06:55:08

标签: ember.js ember-data ember-cli

我是ember框架的新手。我只想在渲染完成后执行在actions钩子内定义的函数。

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

但上面的代码不起作用。 我只是想知道,是否可以运行foo() afterRender?

1 个答案:

答案 0 :(得分:35)

您可以使用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");
    }
  }
});