summaryrefslogtreecommitdiff
path: root/src/hooks/basic.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/hooks/basic.ts')
-rw-r--r--src/hooks/basic.ts9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/hooks/basic.ts b/src/hooks/basic.ts
new file mode 100644
index 0000000..c8eddbc
--- /dev/null
+++ b/src/hooks/basic.ts
@@ -0,0 +1,9 @@
+import React from 'react';
+
+const { useState, useCallback } = React;
+
+export function useToggle(initialValue = false) {
+ const [isOn, setState] = useState(initialValue);
+ const toggle = useCallback(() => setState(x => !x), []);
+ return [isOn, toggle];
+}