diff options
Diffstat (limited to 'src/hooks/basic.ts')
| -rw-r--r-- | src/hooks/basic.ts | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/hooks/basic.ts b/src/hooks/basic.ts index 587d92d..1e8aeae 100644 --- a/src/hooks/basic.ts +++ b/src/hooks/basic.ts @@ -1,9 +1,14 @@ -import React from 'react'; +import * as React from 'react'; const { useState, useCallback } = React; -export function useToggle(initialValue = false) { +export function useToggle(initialValue = false): [boolean, () => void] { const [isOn, setState] = useState(initialValue); const toggle = useCallback(() => setState((x) => !x), []); return [isOn, toggle]; } + +export function useState2<T>(v: T) { + const [value, set] = useState(v); + return { value, set }; +} |
