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

相关内容

热门资讯

8分钟了解(德扑之星)外挂透明... 8分钟了解(德扑之星)外挂透明挂辅助机制(系统)软件透明挂(2020已更新)(哔哩哔哩)1、每一步都...
终于知道!边锋杭麻圈有挂(wE... 终于知道!边锋杭麻圈有挂(wEpoke),太坑了的确真的有挂(有挂方法)-哔哩哔哩;原来确实真的有挂...
一分钟教会你!微信雀神小程序可... 1、一分钟教会你!微信雀神小程序可以开挂(透视)太坑了的确是真的有挂(有挂透明)-哔哩哔哩(UU p...
我来教大家!边锋杭麻圈辅助,德... 1、我来教大家!边锋杭麻圈辅助,德扑之星透视软件方法,详细有挂(有挂技巧)-哔哩哔哩。2、边锋杭麻圈...
普及知识(德扑之星模拟器)外挂... 普及知识(德扑之星模拟器)外挂透明挂辅助软件(德州)透视辅助(2023已更新)(哔哩哔哩);人气非常...
实测必看!边锋杭麻圈有挂(We... 实测必看!边锋杭麻圈有挂(WePoKer),太坑了竟然真的有挂(有挂教程)-哔哩哔哩这是由厦门游乐互...
透视有挂!边锋麻将有挂,wep... 1、透视有挂!边锋麻将有挂,wepoker真的能透视,详细有挂(有挂透明)-哔哩哔哩。2、边锋麻将有...
教程辅助(Wepoke工具)外... 教程辅助(Wepoke工具)外挂透明挂辅助工具(软件)德州ai机器人(2022已更新)(哔哩哔哩);...
揭秘攻略!雀神广东麻将神器软件... 《雀神广东麻将神器软件哪里买软件透明挂》是一款多人竞技的雀神广东麻将神器软件哪里买辅助透视游戏,你将...
透视数据!边锋斗地主透明器,w... 《边锋斗地主透明器软件透明挂》是一款多人竞技的边锋斗地主透明器辅助透视游戏,你将微扑克对手来到同一个...