UNPKG

@fruits-chain/react-native-xiaoshu

Version:
18 lines (17 loc) • 571 B
"use strict"; import isEqual from 'lodash/isEqual'; import { useState, useCallback, useRef } from 'react'; const useDifferentState = initialState => { const [state, setState] = useState(initialState); const StateRef = useRef(state); const onChange = useCallback(v => { const value = typeof v === 'function' ? v(StateRef.current) : v; if (!isEqual(value, StateRef.current)) { setState(value); StateRef.current = value; } }, []); return [state, onChange]; }; export default useDifferentState; //# sourceMappingURL=useDifferentState.js.map