首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >角2 ElementRef nativeElement offsetWidth总是0

角2 ElementRef nativeElement offsetWidth总是0
EN

Stack Overflow用户
提问于 2017-07-23 00:10:13
回答 1查看 3.3K关注 0票数 0

我需要获得具有动态宽度的元素的宽度,我可以使用纯javascript获得宽度,而不是角2。

代码语言:javascript
复制
constructor(private element: ElementRef) {
// ....

获得宽度

代码语言:javascript
复制
let width =  this.element.nativeElement.offsetWidth;

console.log('js offset width', document.getElementById('foobar').offsetWidth);
console.log('angular2 offset width', width);

这样做很好:

代码语言:javascript
复制
document.getElementById('foobar').offsetWidth 

但不是角2的宽度,它总是0。那么,如何通过角的ElementRef获得偏移宽度呢?

EN

回答 1

Stack Overflow用户

发布于 2017-07-23 05:35:58

您没有将TemplateRef与任何DOM元素关联

代码语言:javascript
复制
@ViewChild('foo') foo: TemplateRef;

将HTML中的属性设为

代码语言:javascript
复制
 <div #foo></div>

现在,OnInit试图得到值,它将是一个非零。

现场演示

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45260448

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档