запросы (поиск, сортировки и т.д.) для того что бы уже не нужный запрос не продолжал отрабатывать, это проиходит в одном месте для всего приложения (функция в файле api,js), дальшеу меня есть куча страниц которые юзают в useEffect этот fetch метод с файла api.js, Можно ли как-то в одном месте определить что запрос был отменен и не делать dispatch, что бы не пихать в каждый компонент условие (на картинке)? Спасибо за ответы
let controller function abortRequest() { if (controller) { controller.abort() controller = undefined } } function useFetch(api) { const [state, setState] = useState() useEffect(() => { abortRequest() controller = new AbortController() fetch(url, { signal: controller.signal }) .then(() => { dispatch({ type: 'setState' }) }) }, []) } как вариант
Обсуждают сегодня