fix multiselect trigger onOpen/onClose after first render

This commit is contained in:
NikolaBorislavovHristov 2019-12-02 10:37:53 +02:00
parent 2ec1448841
commit eed4a63243

View file

@ -41,7 +41,9 @@ const Multiselect = ({ className, direction, title, options, selected, disabled,
closeMenu(); closeMenu();
} }
}, [dataset, onSelect]); }, [dataset, onSelect]);
const mountedRef = React.useRef(false);
React.useLayoutEffect(() => { React.useLayoutEffect(() => {
if (mountedRef.current) {
if (menuOpen) { if (menuOpen) {
if (typeof onOpen === 'function') { if (typeof onOpen === 'function') {
onOpen({ onOpen({
@ -57,6 +59,9 @@ const Multiselect = ({ className, direction, title, options, selected, disabled,
}); });
} }
} }
}
mountedRef.current = true;
}, [menuOpen]); }, [menuOpen]);
return ( return (
<Popup <Popup