Какие есть опции у useFetch

«Какие есть опции у useFetch» — вопрос из категории Vue, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

useFetch — это кастомный хук, часто используемый для упрощения HTTP-запросов. Основные опции:

  1. url — обязательный параметр, адрес запроса.
  2. method — HTTP-метод (GET, POST, и т.д.), по умолчанию GET.
  3. headers — объект с заголовками ({ 'Content-Type': 'application/json' }).
  4. body — данные для отправки (обычно JSON.stringify(data)).
  5. onSuccess/onError — колбэки при успехе/ошибке.
  6. initialData — начальное состояние данных до загрузки.
  7. dependencies — массив зависимостей для рефетча (как в useEffect).

Пример:

const { data, loading, error } = useFetch({
  url: '/api/users',
  method: 'POST',
  headers: { 'Authorization': 'Bearer token' },
  body: JSON.stringify({ name: 'John' }),
  onSuccess: (data) => console.log('Успех:', data),
});