将属性设置为Ember Component

时间:2015-07-20 09:55:15

标签: javascript ember.js

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

在以前版本的ember(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'));
  }
});

1 个答案:

答案 0 :(得分:1)

不推荐使用

AttributeBindings,或者在将它们与组件一起使用时会收到警告。

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