react-selectable-box
Version:
A React component used hooks that allows you to select elements in the drag area using the mouse
24 lines (23 loc) • 762 B
JavaScript
import React from 'react';
var useInternalLayoutEffect = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;
var useLayoutEffect = function useLayoutEffect(callback, deps) {
var firstMountRef = React.useRef(true);
useInternalLayoutEffect(function () {
return callback(firstMountRef.current);
}, deps);
// We tell react that first mount has passed
useInternalLayoutEffect(function () {
firstMountRef.current = false;
return function () {
firstMountRef.current = true;
};
}, []);
};
var useLayoutUpdateEffect = function useLayoutUpdateEffect(callback, deps) {
useLayoutEffect(function (firstMount) {
if (!firstMount) {
return callback();
}
}, deps);
};
export default useLayoutUpdateEffect;