首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从React应用程序和react组件外部的html元素中检测单击。

从React应用程序和react组件外部的html元素中检测单击。
EN

Stack Overflow用户
提问于 2021-10-27 08:47:04
回答 4查看 260关注 0票数 1

我有一个html页面:

  • html元素
  • 一些空的div将被react元素替换.

我想听一个来自react组件的html元素的“单击事件”。

在这里,我需要进入“react component”,当我们单击“”元素.时,这个事件将被触发。

代码语言:javascript
复制
<div id="click">button in static html</div>
<div id="react-component"></div> -> replace by a react component

有办法做到这一点吗?谢谢

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2021-10-27 08:52:52

如果您想要侦听任何单击事件(单击任何位置),您只需从react组件中在eventListener中使用一个经典的useEffect:

代码语言:javascript
复制
useEffect(() => {
    window.addEventListener('click', () => { you function });

    return () => window.removeEventListener('click', () => { you function });
});

如果您想要的是侦听应用程序的某个给定部分的单击事件,我建议您从它的组件中处理它,并将一个回调传递给您想要处理该事件的那个。

票数 0
EN

Stack Overflow用户

发布于 2021-10-27 08:50:44

任何html标记上的onClick事件处理程序都将在react中工作。

票数 1
EN

Stack Overflow用户

发布于 2021-10-27 08:50:52

您仍然可以在react中编写普通的JS代码。只需添加一个useEffect(..., [])钩子并使用标准JS代码绑定按钮onClick即可。

以下是JS onclick事件的文档:https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onclick

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69735500

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档