@modern-kit/react
Version:
32 lines (28 loc) • 845 B
JavaScript
;
var React = require('react');
var utils = require('@modern-kit/utils');
function useInputState(initialValue) {
const [value, setValue] = React.useState(initialValue);
const onChange = React.useCallback((e) => {
if (!e.target) {
throw new Error("\uC774\uBCA4\uD2B8 \uD0C0\uAC9F \uC694\uC18C\uAC00 \uC815\uC758\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4");
}
const { name, value: value2 } = e.target;
setValue((prev) => {
if (utils.isString(prev)) {
return value2;
}
if (!name) return prev;
return {
...prev,
[name]: value2
};
});
}, []);
const reset = React.useCallback(() => {
setValue(initialValue);
}, [initialValue]);
return { value, onChange, reset };
}
exports.useInputState = useInputState;
//# sourceMappingURL=index.cjs.map