从emberjs中的其他视图模板中获取jquery元素

时间:2014-08-29 14:31:10

标签: javascript jquery ember.js

我有一个带有jQuery的Emberjs应用程序,我遇到了奇怪的事情,但也许它是一个功能:)。

我有一个主视图模板,我们将其命名为 main.hbs

此模板具有子模板child1.hbs:{{outlet child1}}

我知道每个模板都有自己的.js文件(main.js和child1.js)

在child1.js中我有这样的代码:

export default Ember.View.extend({
   didInsertElement: function() {
      console.log(Ember.$('.somediv-from-main-hbs').length);
   }
});

我需要从父视图中获取元素,但我不能。 有没有办法从父模板访问元素?

谢谢。

1 个答案:

答案 0 :(得分:0)

是否有更改,您的视图已呈现?

export default Ember.View.extend({
   didInsertElement: function() {
      this._super();

      console.log($('.somediv-from-main-hbs').length);
   }
});

甚至

export default Ember.View.extend({
   didInsertElement: function() {
      this._super();

      Ember.run.next(function () {
          console.log($('.somediv-from-main-hbs').length);
      });
   }
});