Customizable React http client library
npm install @fracto/http-client> Customizable React http client library
 
``bash`
npm install --save http-client
jsx
export default function App() {
const [todos, setTodos] = useState([]);
const todosAPI = useAPI("GET", "/todos");
const fetchTodos = useCallback(() => {
todosAPI.call();
}, [todosAPI, params]);
useEffect(() => {
fetchTodos();
}, []);
useEffect(() => {
if(todosAPI.networkState === 'success' && todosAPI.body) {
setTodos(todosAPI.body);
}
}, [todosAPI.body, todosAPI.networkState]);
return (
{todosAPI.loading && Loading...}
{
!todosAPI.loading && todosAPI.networkState === "success" && (
{todos.map((item) => ({item.title}))}
)
}
{!todosAPI.loading && todosAPI.networkState === "error" && (Error fetching todos)}
);
}
``See more advanced demo on codesandbox