【发布时间】:2018-03-16 10:22:30
【问题描述】:
在我的 Ember 应用程序中,我正在尝试进行一些 DOM 更新(分离一些元素并将其附加到其他地方)
var comp = Ember.$(this.element).detach();
Ember.$("#some-sec").append(comp);
但是,由于某些原因,在执行此操作之后,早期的事件处理就被折腾了。 难道我做错了什么 ?对于 Ember 应用程序,这是否需要以不同的方式完成?
代码从组件内部调用如下;
didRender: function(){
this._super(...arguments);
Ember.run.debounce(this, this.updateCustomDOM, 20);
},
【问题讨论】:
-
this是一个组件吗?事件处理程序(Ember 还是 jQuery?)绑定到什么?我认为我们需要了解更多有关 ember 上下文的信息。 -
是的,这段代码是在自定义 Ember 组件中编写的。所以是的,'this' 指的是组件
-
根据条件(当你想分离它时),Ember 方法是在 parent 组件中设置一个属性。喜欢
{{#if condition}}{{childComponent someProp=value}}{{/if}} -
..但由于我看不到这种情况,所以很难回答。还有事件处理程序绑定到什么?
-
为问题添加了更多细节......它是从组件的 didRender 句柄调用的。
标签: javascript jquery ember.js