Credit: Re-export from react-use
React state hook that returns the default value when state is null or undefined.
import { useDefault } from "@lynx-js/react-use";
const Demo = () => {
const initialUser = { name: "Marshall" };
const defaultUser = { name: "Mathers" };
const [user, setUser] = useDefault(defaultUser, initialUser);
return (
<view>
<text>User: {user.name}</text>
<view bindtap={() => setUser(null)}>set to null</view>
</view>
);
};import { Dispatch, SetStateAction } from "react";
type SetState<T> = Dispatch<SetStateAction<T | null | undefined>>;
type UseDefaultReturn<T> = readonly [T, SetState<T>];
declare function useDefault<T>(
defaultValue: T,
initialValue: T | (() => T)
): UseDefaultReturn<T>;