首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用jquery附加事件处理程序以响应组件

使用jquery附加事件处理程序以响应组件
EN

Stack Overflow用户
提问于 2015-05-30 14:14:07
回答 1查看 1.9K关注 0票数 0

我知道这是正确的方法-

  1. 使用属性(如onClick、onBlur等)在react组件上附加处理程序。
  2. 如果附加自定义事件,那么将它们附加到componentDidMount中,这样每次呈现都会附加它们。

https://facebook.github.io/react/docs/interactivity-and-dynamic-uis.html#under-the-hood-autobinding-and-event-delegation

但是,当使用jquery将事件附加到DOM元素时会发生什么?为什么我不能听这些事?我正在把它们附加到componentDidMount的外面。但是,事件处理程序至少应该在第一次遇到麻烦吗?

我正在调试一些将处理程序直接附加到它的react代码,但是它根本没有影响到处理程序。那是为什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-30 16:52:14

没有代码示例,很难确定,但更有可能的是,您试图使用jQuery将事件绑定到一些生成反应的DOM元素。因此,根据绑定的位置,您可能使用了一个jQuery选择器,它不返回任何结果,因为React在运行选择器时还没有将该元素呈现给DOM。

这就是为什么,如果要使用jQuery绑定,应该确保这样做是组件生命周期的一部分,确保元素在尝试使用jQuery进行选择之前被实际呈现给DOM。这就是为什么建议将这类代码放入componentDidMount中并在componentWillUnmount中清理它的原因。

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

https://stackoverflow.com/questions/30547215

复制
相关文章

相似问题

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