@storm-stack/hooks
Version:
A collection of React hooks used by Storm Software in various client libraries and applications.
21 lines (20 loc) • 576 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.usePrevious = usePrevious;
var _react = _interopRequireDefault(require("react"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
function usePrevious(value) {
const ref = _react.default.useRef({
value,
previous: value
});
return _react.default.useMemo(() => {
if (ref.current.value !== value) {
ref.current.previous = ref.current.value;
ref.current.value = value;
}
return ref.current.previous;
}, [value]);
}