获取ember组件(SVG)父元素的宽度和高度

时间:2015-02-22 08:04:58

标签: ember.js svg

我正在尝试使用组件创建SVG包装器。我的应用程序将允许用户从列表中呈现不同的SVG。

我希望那些SVG适合屏幕;所以我想在组件插入屏幕之前我会得到DOM父元素的宽度和高度。

这样做是我试过的代码。似乎该问题与SVG有关,因为当tagName设置为span或甚至没有设置时;事情按预期进行。

import Ember from 'ember';

export default Ember.Component.extend({
  tagName: 'svg',
  attributeBindings: ['height', 'width', 'viewBox', 'xmlns', 'version'],
  width: getParentWidth(),

  getParentWidth: function() {
    return this.$().parent().width();
  }
});

感谢您的帮助

1 个答案:

答案 0 :(得分:2)

您需要等到元素插入DOM。

  getParentWidth: function() {
    return this.$().parent().width();
  }.observes('didInsertElement')