mirror of
https://github.com/overleaf/overleaf.git
synced 2024-12-02 14:30:41 -05:00
22 lines
553 B
JavaScript
22 lines
553 B
JavaScript
|
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)
|
||
|
}
|