Skip to content

Commit 7932d2a

Browse files
authored
Fix react custom event listener (#112)
Co-authored-by: Frédéric Collonval <[email protected]>
1 parent 8cbcfb7 commit 7932d2a

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

packages/react-components/lib/react-utils.js

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,19 @@ import { useEffect, useLayoutEffect } from 'react';
22

33
export function useProperties(targetElement, propName, value) {
44
useEffect(() => {
5-
if (value !== undefined && targetElement.current[propName] !== value) {
5+
if (
6+
value !== undefined &&
7+
targetElement.current &&
8+
targetElement.current[propName] !== value
9+
) {
610
// add try catch to avoid errors when setting read-only properties
711
try {
812
targetElement.current[propName] = value;
913
} catch (e) {
1014
console.warn(e);
1115
}
1216
}
13-
}, [value]);
17+
}, [value, targetElement.current]);
1418
}
1519

1620
export function useEventListener(targetElement, eventName, eventHandler) {
@@ -26,5 +30,5 @@ export function useEventListener(targetElement, eventName, eventHandler) {
2630

2731
targetElement?.current?.removeEventListener(eventName, eventHandler);
2832
};
29-
}, [eventName, eventHandler, targetElement]);
33+
}, [eventName, eventHandler, targetElement.current]);
3034
}

0 commit comments

Comments
 (0)