@F1eX
React Dev

Зачем нужен ignore в данном коде?

В документации React по хукам(https://ru.reactjs.org/docs/hooks-faq.html) нашёл такой приём работы с fetch()
5e8e3096ad222934305318.png
Сказано, что флаг ignore позволяет "обрабатывать ответы, пришедшие не в порядке запросов, с помощью локальной переменной внутри эффекта", но я не совсем понимаю что это значит.
Я понимаю, например, зачем в массив зависимостей передается productId, но вроде же функция в return у useEffect - это аналог классового метода componentWillUnmount. Зачем оно здесь?
  • Вопрос задан
  • 267 просмотров
Решения вопроса 1
@camelCaseVlad
Данный метод называют Clean Up'ом, что можно перевести как зачистка.
В данном примере представлена "перестраховка" в случае, когда фетч не успел вернуть дату, а компонент уже был демонтирован.

[1] компонент демонтирован, [2] флаг ignore стал трушным и [3] сетпродукт не будет вызван.

UPD: В будущем, предполагаю, для клинапа будут использовать АбортКонтроллер.

https://dev.to/pallymore/clean-up-async-requests-i...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы