当前位置: 首页 > article >正文

[react]小技巧, ts如何声明点击事件的类型

很简单, 鼠标放到事件上面就行了

如果想知道点击的是什么元素 ,打印他的nodename就行了

不过得断言为html元素才行

  const handleClick = (e: React.MouseEvent<HTMLDivElement, MouseEvent>) => {
    console.log('current', (e.target as HTMLElement).nodeName);
  };

为什么要断言是html元素?

EventTarget 是所有事件目标(包括 DOM 元素、XMLHttpRequestWebSocket 等)的基类。并不是所有继承自 EventTarget 的对象都具备 nodeName 属性,nodeName 这个属性是 HTMLElement 类型特有的。因此,只有在 EventTarget 的具体子类是 HTMLElement 或其更具体的子类时,才会有 nodeName 属性。

(XMLHttpRequest, WebSocket)并没有 nodeName属性, 懂了吗


http://www.kler.cn/a/460203.html

相关文章:

  • AE RFG 1251 Generator User Manual
  • UnityRenderStreaming使用记录(三)
  • 深入理解连接池:从数据库到HTTP的优化之道
  • 系统设计——大文件传输方案设计
  • 二、github基础
  • MySQL初始安装登录:ERROR 2003 (HY000): Can‘t connect to MySQL server on
  • 快速了解开源日志框架log4net:灵活记录应用程序日志信息的利器
  • 《代码随想录》Day20打卡!
  • 使用亚马逊针对 PyTorch 和 MinIO 的 S3 连接器实现可迭代式数据集
  • 深入探讨 Nginx 性能优化:从基础到高级的最佳实践
  • 活动预告 | Microsoft Power Platform 在线技术公开课:实现业务流程自动化
  • 机器人革新!ModbusTCP转CCLINKIE网关揭秘
  • torch.nn.Sequential的用法
  • Markov test笔记
  • 对于爬虫的配置和管理,涉及到的模块和功能主要包括
  • stm32week1+2
  • C++系列之引用
  • SQL 实战:正则表达式匹配 – 高效数据筛选与文本解析
  • 数据库-MySQL-sql有in会走索引吗?(易理解)
  • Java包装类型的缓存
  • solr9.7 单机安装教程
  • Uniapp在浏览器拉起导航
  • 自动驾驶新纪元:城区NOA功能如何成为智能驾驶技术的分水岭
  • (七)- plane/crtc/encoder/connector objects
  • SQL 实战:使用 CTE(公用表达式)优化递归与多层复杂查询
  • Mysql的事务隔离机制