为什么ElementRef不安全,如果是这样,我们可以使用什么替代?
我一直在使用ElementRef来查看或监听特定的html标签,然后在初始化后发送特定的宽度,但是如果这会带来安全风险,我将不会使用它。说实话,我不理解为什么Angular 2团队会允许在他们的框架中存在这样的安全漏洞。
有什么安全可靠的技术可以使用吗?我的测试组件如下:
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-standard',
template: ` <button type="button" #buttonW></button>`,
})
export class standardComponent implements OnInit {
name: string = 'app-standard';
viewWidthButton: any;
@ViewChild( 'buttonW' ) elButtonW: ElementRef;
constructor() {
this.viewWidthButton = this.elButtonW.nativeElement.offsetWidth;
console.log ('button width: ' + this.viewWidthButton);
}
ngOnInit() {
}
}
Angular 2 页面参考:
https://angular.io/docs/ts/latest/api/core/index/ElementRef-class.html
ElementRef
本身无关。你的代码并没有引入任何风险。 - a better oliver