尝试获取元素引用名称但不起作用。如果有人知道请帮助找到解决方案。
alert 应该像容器一样。因为那是元素引用。
app.component.html:
<div (click)="test(event)" #container></div>
app.component.ts:
test(e){
alert(e.elementRef);
//Output should be like alert("container");
}
最佳答案
如Kamil Augustyniak在他的评论中写道,在您的 div
元素中使用 $event
而不是 event
。
<div (click)="test($event)" #container></div>
组件类中的 test
方法将使用 MouseEvent
进行调用。您可以从 HTML 元素的 target
、srcElement
或 currentTarget
属性(取决于浏览器)获取对 HTML 元素的引用。
test(event: MouseEvent): void {
const htmlElement = event.target || event.srcElement || event.currentTarget;;
...
}
Note however that
#container
in yourdiv
element is an Angular template reference variable that is commonly used together with a@ViewChild
decorator.
关于typescript - 如何获取角度8中的元素引用名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60025072/