mirror of
https://github.com/bendtherules/some-hooks.git
synced 2026-08-18 13:52:05 +00:00
useBoolean, useStateWithReset - Add hooks
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
import { useState, useCallback } from "react";
|
||||
|
||||
const useBoolean = (initial: boolean) => {
|
||||
const [value, setValue] = useState<boolean>(initial);
|
||||
return {
|
||||
value,
|
||||
setValue,
|
||||
toggle: useCallback(() => setValue(v => !v), []),
|
||||
setTrue: useCallback(() => setValue(true), []),
|
||||
setFalse: useCallback(() => setValue(false), [])
|
||||
};
|
||||
};
|
||||
|
||||
export default useBoolean;
|
||||
@@ -0,0 +1,12 @@
|
||||
import { useState, useCallback } from "react";
|
||||
|
||||
const useStateWithReset = <TValue>(initial: TValue) => {
|
||||
const [value, setValue] = useState<TValue>(initial);
|
||||
return {
|
||||
value,
|
||||
setValue,
|
||||
reset: useCallback(() => setValue(initial), [])
|
||||
};
|
||||
};
|
||||
|
||||
export default useStateWithReset;
|
||||
Reference in New Issue
Block a user