@kcuf-hook/use-debounced
Version:
React hook - useDebounced/useThrottled.
21 lines (20 loc) • 871 B
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = useDebouncedValue;
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _react = require("react");
var _useDebouncedCallback = _interopRequireDefault(require("./use-debounced-callback"));
function useDebouncedValue(value, options) {
var _useState = (0, _react.useState)(value),
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
stateValue = _useState2[0],
setStateValue = _useState2[1];
var debouncedSetStateValue = (0, _useDebouncedCallback.default)(setStateValue, options);
(0, _react.useEffect)(function () {
debouncedSetStateValue(value);
}, [value, debouncedSetStateValue]);
return stateValue;
}