Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Component sometimes fires event handlers twice #16763

Closed
patrick-radulian opened this issue Sep 12, 2019 · 3 comments
Closed

Component sometimes fires event handlers twice #16763

patrick-radulian opened this issue Sep 12, 2019 · 3 comments

Comments

@patrick-radulian
Copy link

Do you want to request a feature or report a bug?
I want to report a bug.

What is the current behavior?
Event handlers on elements are fired twice, when hovering from one element onto the next.

If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem. Your bug will get fixed much faster if we can run your code and it doesn't have dependencies other than React. Paste the link to your JSFiddle (https://jsfiddle.net/Luktwrdm/) or CodeSandbox (https://codesandbox.io/s/new) example below:
https://codesandbox.io/s/quizzical-mountain-9s48c

What is the expected behavior?
Event handlers should only fire once.

Which versions of React, and which browser / OS are affected by this issue? Did this work in previous versions of React?
React 16.8.4
ReactDOM 16.8.4
Chrome 76.0.3809.132
Firefox 69.0 (64-Bit)
Edge 44.18362.267.0

yuanoook added a commit to yuanoook/react that referenced this issue Sep 19, 2019
yuanoook added a commit to yuanoook/react that referenced this issue Sep 21, 2019
yuanoook added a commit to yuanoook/react that referenced this issue Sep 21, 2019
@yuanoook
Copy link
Contributor

yuanoook commented Sep 21, 2019

After testing it again and again, I found how to reproduce it:

Step 1, render a new component inside a rendered component;
Step 2, inside the new component, mouse enter a node from its sibling.

Current result: onMouseEnter is called more than once.
Demo: https://codesandbox.io/s/hungry-field-kgkli

@bvaughn We may change the issue title because it's not related with dangerouslySetInnerHTML.

I've made a test and fixture for this: yuanoook@71dcd9e

Hope the information can be helpful. I still have no idea how to fix it.

If there's no one working on this, I would like to pick this up.

There's a similar issue #10906
@gaearon Do you have any advice?

@bvaughn
Copy link
Contributor

bvaughn commented Sep 23, 2019

If there's no one working on this, I would like to pick this up.

Go for it, @yuanoook!

@bvaughn bvaughn changed the title Component rendered into dangerouslySetInnerHTML parentElement sometimes fires event handlers twice Component sometimes fires event handlers twice Sep 23, 2019
@souravbadami
Copy link

Let's close this? I see the fix was merged in #16928.

@aweary aweary closed this as completed Oct 24, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants