Ember jQuery分离问题

时间:2018-03-16 10:22:30

标签: javascript jquery ember.js

在我的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);
},

1 个答案:

答案 0 :(得分:0)

  1. 如果您需要将组件的元素移动到另一个地方,那么 应该在didInsertElement钩子里做。在重新渲染时,Ember会正确更新它。
  2. append足以移动元素,您不需要detach

    Ember.$("#some-sec").append(this.$());
    
  3. 当我这样做时,我会在移动元素之后附加事件(不确定是否重要)
  4. willDestroyElement hook中删除DOM中的元素:

    this.$().remove();
    
  5. this.$()包含jquery的$()

    中包含的组件元素