diff --git a/packages/hooks/src/useBoolean/__tests__/index.test.ts b/packages/hooks/src/useBoolean/__tests__/index.test.ts index 0542471363..78b04adb37 100644 --- a/packages/hooks/src/useBoolean/__tests__/index.test.ts +++ b/packages/hooks/src/useBoolean/__tests__/index.test.ts @@ -44,7 +44,18 @@ describe('useBoolean', () => { }); it('test on default value', () => { - const hook = setUp(true); - expect(hook.result.current[0]).toBe(true); + const hook1 = setUp(true); + expect(hook1.result.current[0]).toBe(true); + const hook2 = setUp(); + expect(hook2.result.current[0]).toBe(false); + // @ts-ignore + const hook3 = setUp(0); + expect(hook3.result.current[0]).toBe(false); + // @ts-ignore + const hook4 = setUp(''); + expect(hook4.result.current[0]).toBe(false); + // @ts-ignore + const hook5 = setUp('hello'); + expect(hook5.result.current[0]).toBe(true); }); }); diff --git a/packages/hooks/src/useBoolean/index.ts b/packages/hooks/src/useBoolean/index.ts index b27114605a..d0a2b7a12a 100644 --- a/packages/hooks/src/useBoolean/index.ts +++ b/packages/hooks/src/useBoolean/index.ts @@ -9,7 +9,7 @@ export interface Actions { } export default function useBoolean(defaultValue = false): [boolean, Actions] { - const [state, { toggle, set }] = useToggle(defaultValue); + const [state, { toggle, set }] = useToggle(!!defaultValue); const actions: Actions = useMemo(() => { const setTrue = () => set(true);