Почему выполнять HTTP-запросы внутри computed — плохая практика, в отличие от watch? Как в watch организовать отмену или очистку таких эффектов?

computed должен вычислять производное значение без побочных эффектов, а watch предназначен для реакции, в том числе сетевого запроса.

Короткий ответ

Что ответить на собеседовании

computed должен вычислять производное значение без побочных эффектов, а watch предназначен для реакции, в том числе сетевого запроса.

Подробный разбор

Ответ с пояснениями

computed должен вычислять производное значение без побочных эффектов, а watch предназначен для реакции, в том числе сетевого запроса.

В watch создайте AbortController и зарегистрируйте отмену через onCleanup, доступный callback третьим аргументом. При новом значении предыдущая операция очищается; дополнительно можно проверять актуальность запроса перед записью результата. Async-getter computed не даёт надёжного управления такой жизнью запроса.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее