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

相关内容

热门资讯

黑科技透明挂!wpkai透视外... 黑科技透明挂!wpkai透视外挂售卖,aapoker挂,高科技教程(有挂详情)-哔哩哔哩;人气非常高...
黑科技好牌!德扑ai决策软件(... 1、黑科技好牌!德扑ai决策软件(黑科技ai)先前真的是有挂(有挂挂)-哔哩哔哩(UU poker、...
黑科技挂!wepoke有透视挂... 黑科技挂!wepoke有透视挂吗,德州之星透牌器,科技教程(有挂总结)-哔哩哔哩是一款可以让一直输的...
黑科技好友房!手机云扑克辅助(... 自定义手机云扑克辅助系统规律,只需要输入自己想要的开挂功能,一键便可以生成出微扑克专用辅助器,不管你...
黑科技ai辅助!aapoker... 黑科技ai辅助!aapoker有假吗,wepoke辅助德之星,科技教程(有挂总结)-哔哩哔哩1)we...
黑科技科技!扑克之城怎么那么假... 黑科技科技!扑克之城怎么那么假(智能ai)先前是真的有挂(有挂口控制)-哔哩哔哩;1分钟了解详细教程...
黑科技脚本!红龙扑克有挂吗,w... 黑科技脚本!红龙扑克有挂吗,wpk透视辅助,2025版教程(有挂方法)-哔哩哔哩1)红龙扑克有挂吗辅...
黑科技存在!线上wpk德州ai... 黑科技存在!线上wpk德州ai打法(ai代打)从前有挂(有挂私人局)-哔哩哔哩;《WPK辅助透视》‌...
黑科技透视!德朴之星辅助器,a... 黑科技透视!德朴之星辅助器,aa poker智能ai辅助价格,wpk教程(有挂方法)-哔哩哔哩1、很...
黑科技好友!aapoker线上... 黑科技好友!aapoker线上规律(辅助挂)先前存在有挂(有挂AI)-哔哩哔哩1、许多玩家不知道aa...