@figliolia/react-hooks
Version:
A small collection of simple React Hooks you're probably rewriting on a regular basis
23 lines (22 loc) • 740 B
JavaScript
import { useCallback, useState } from "react";
export const useLoadingState = () => {
const [loading, setLoading] = useState(false);
const [success, setSuccess] = useState(false);
const [error, setError] = useState(false);
const setState = useCallback((state, value) => {
switch (state) {
case "error":
return setError(value);
case "loading":
return setLoading(value);
case "success":
return setSuccess(value);
}
}, []);
const resetState = useCallback(() => {
setLoading(false);
setSuccess(false);
setError(false);
}, []);
return { loading, success, error, setState, resetState };
};