import { useEffect } from 'react' import fetchMock from 'fetch-mock' /** * Run callback to mock fetch routes, call restore() when unmounted */ export default function useFetchMock(callback) { useEffect(() => { return () => { fetchMock.restore() } }, []) // Running fetchMock.restore() here as well, // in case there was an error before the component was unmounted. fetchMock.restore() // The callback has to be run here, rather than in useEffect, // so it's run before the component is rendered. callback(fetchMock) }