Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 8:使用HostListener在鼠标单击事件后查找DOM元素_Angular_Typescript_Angular8 - Fatal编程技术网

Angular 8:使用HostListener在鼠标单击事件后查找DOM元素

Angular 8:使用HostListener在鼠标单击事件后查找DOM元素,angular,typescript,angular8,Angular,Typescript,Angular8,单击鼠标后,如何在页面中的任何位置找到当前DOM元素? 当前正在尝试使用Angular 8中的HostListener @HostListener('click') onClick(){ window.alert('Current DOM element is'); } 使用$event.target设置第二个参数 @HostListener('click', ['$event.target']) onClick(e){ window.alert('Current DOM elem

单击鼠标后,如何在页面中的任何位置找到当前DOM元素? 当前正在尝试使用Angular 8中的HostListener

@HostListener('click') onClick(){
    window.alert('Current DOM element is');
}

使用
$event.target设置第二个参数

@HostListener('click', ['$event.target']) onClick(e){
  window.alert('Current DOM element is');
  console.log(e);
}

您也可以使用
ElementRef

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

constructor(private elementRef: ElementRef) {}

@HostListener('click') onClick(){
    console.log(this.elementRef.nativeElement);
}
是一个链接,它解释了您可以使用指令检测dom元素,并且只有当它存在时,主机侦听器才应该工作

请参阅:


谢谢!不管怎样,什么对这种情况更好?hostlistener或其他elementref回答谢谢!这在我的组件内部起作用。我如何使它捕获组件外部的项目?还是不可能?我正在测试这个孩子component@Artportraitdesign1我不知道。答案因情况而异。在帖子中添加更多的解释会很有帮助。给出了分数和接受者的答案,请随意竖起大拇指提问如果您添加/解释该链接中的任何代码块或方法,这将是一个很好的答案!当然谢谢你的指导!