@knine-sdk/react
Version:
React helpers for Knine Finance projects. Part of Knine JS SDK
28 lines (23 loc) • 746 B
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var react = require('react');
const useMountedState = (initialState) => {
const mountedRef = react.useRef(false);
const [state, setState] = react.useState(initialState);
react.useEffect(() => {
mountedRef.current = true;
return () => {
mountedRef.current = false;
};
}, []);
react.useEffect(() => {
setState(initialState);
}, [initialState]);
const setMountedState = react.useCallback((...args) => {
if (!mountedRef.current)
return;
setState(...args);
}, []);
return [state, setMountedState];
};
exports.useMountedState = useMountedState;