我正在尝试使用组件创建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();
}
});
感谢您的帮助
答案 0 :(得分:2)
您需要等到元素插入DOM。
getParentWidth: function() {
return this.$().parent().width();
}.observes('didInsertElement')