Angular文档.addEventListener监听点击外部。
创始人
2024-10-29 23:01:18
0

在Angular中,我们可以使用HostListener装饰器来监听点击事件,并检查点击事件的目标是否在组件内部。如果目标不在组件内部,即被点击的是组件外部,则执行相应的逻辑。

以下是一个示例代码:

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

@Component({
  selector: 'app-root',
  template: `
    

Angular Event Listener

Click inside or outside of this component and check the console.

`, styles: ['div { padding: 20px; border: 1px solid black; }'] }) export class AppComponent { constructor() { } @HostListener('document:click', ['$event']) onClick(event: MouseEvent) { // 检查点击事件的目标是否在组件内部 const clickedInside = this.elementRef.nativeElement.contains(event.target); if (!clickedInside) { console.log('Clicked outside'); // 在这里执行点击外部的逻辑 } } }

在上面的示例代码中,我们使用了@HostListener('document:click', ['$event'])装饰器来监听整个文档的点击事件。然后在onClick方法中,我们使用elementRef.nativeElement.contains(event.target)来检查点击事件的目标是否在组件内部。如果目标不在组件内部,则说明点击事件发生在组件外部,我们可以在此处执行相应的逻辑。在本例中,我们只是简单地将一条消息打印到控制台。

请注意,为了使用elementRef.nativeElement.contains(event.target),我们需要在组件的构造函数中注入ElementRef

相关内容

热门资讯

细节辅助!新世界脚本辅助器(透... 细节辅助!新世界脚本辅助器(透视)德普之星透视免费(安装教程开挂辅助脚本)【无需打开直接搜索加薇13...
从前有辅助"大唐麻雀... 从前有辅助"大唐麻雀辅助器怎么设置"开挂(透视)辅助脚本(教你攻略有挂实锤);无需打开直接搜索薇:1...
原来有开挂!聚财平台辅助(透视... 原来有开挂!聚财平台辅助(透视)德普之星私人局透视(软件教程开挂辅助脚本)>>您好:软件加薇1367...
从前有辅助"赖子三加... 从前有辅助"赖子三加一辅助"开挂(透视)辅助透视(科技教程有挂讲解)【无需打开直接搜索加薇13670...
曝光辅助!鄱阳翻精怎么开挂(透... 曝光辅助!鄱阳翻精怎么开挂(透视)wpk俱乐部有没有辅助(高科技教程开挂辅助神器);无需打开直接搜索...
原先有辅助"新西部解... 较多好评“微乐万能挂官网”开挂(透视)辅助教程 了解更多开挂安装加(136704302)微信号是一款...
一向有开挂"苹果手机... 您好:这款苹果手机微信小程序游戏破解器游戏是可以开挂的,确实是有挂的,很多玩家在这款苹果手机微信小程...
细节辅助!聚友联盟免费辅助器下... 细节辅助!聚友联盟免费辅助器下载地址(透视)hhpoker免费透视脚本(可靠技巧开挂辅助工具)>>您...
本然有开挂"逍遥辅助... 您好:逍遥辅助器怎么用这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌...
曝光开挂!皮皮衡阳字牌科技(透... 曝光开挂!皮皮衡阳字牌科技(透视)wepoker插件程序激活码(wpk教程开挂辅助安装);无需打开直...