Angular2:获取DOM-Element的维度(没有ElementRef)

时间:2016-10-21 09:17:46

标签: dom angular

我尝试获取DOM-Element的尺寸(heigtht / width)。 出于安全原因(参见https://angular.io/docs/ts/latest/guide/security.html),我不想直接使用DOM。

有没有人有其他想法?

2 个答案:

答案 0 :(得分:2)

你可以这样做

import { Component } from '@angular/core';

@Component({
  selector: 'my-selector',
  template: '<div #myDiv (click)=getElementDimensions(myDiv)>Hello</div>'
})
export class AboutComponent {

  constructor() { }

  getElementDimensions(el: HTMLDivElement) {
    console.log(el.getBoundingClientRect())
  }

}

答案 1 :(得分:1)

我更多地考虑了我的问题:

实际上,通过ElementRef访问DOM-Element在这种情况下不会产生安全威胁,因为没有(不安全)数据通过它注入。

如果您想使用ElementRef(例如,用于服务器端渲染)并想要操作DOM-Element,我建议您查看Renderer类。