设置属性为余烬组件

Set attribute to Ember Component

本文关键字:组件 余烬 属性 设置      更新时间:2023-09-26

我想将draggable属性设置为组件div本身。

在以前版本的烬(1.13之前),我习惯使用attributeBindings属性。但是从1.13开始,这个属性似乎被弃用了。

有新的组件生命周期挂钩(http://emberjs.com/blog/2015/06/12/ember-1-13-0-released.html#toc_component-lifecycle-hooks),但这对我也没有帮助。

didInitAttrs() {
    this.set('draggable', true);
}

实现此行为的首选方法是什么?

同时这是我的解决方案:

import Ember from 'ember';
export default Ember.Component.extend({
  draggable: true,
  willInsertElement() {
    this.set('element.draggable', this.get('draggable'));
  }
});

AttributeBindings不被弃用,否则在与组件一起使用它们时会收到警告。

该属性恰好是从2.4中消失的ember视图中继承的,但这并不意味着组件上继承的接口将在没有任何弃用通知的情况下消失。所以还是用attributeBindings