🚀Стань квалифицированным разработчиком за 9 месяцев с трудоустройством в IT —INCUBATOR: Front-end Back-end Репозиторий, соберем 1000 ⭐️, выпущу вторую часть api: Топ 5 книг для программиста Станьте спонсором канала, и вы получите доступ к эксклюзивным бонусам. Подробнее: Поддержать меня можно на: Patreon Boosty Поддержать проект монеткой: А здесь бесплатная взаимопомощь: * Мы в соц. сетях: * Мои личные VK и Inst: #reactjs #курс #reactquery 00:00:00 — О чём курс, репозиторий 00:24:05 — Практика: создаём проект Vite 00:25:25 — Установка TanStack Query 00:27:31 — Установка openapi-typescript (кодогенерация) 00:28:48 — Установка TanStack Router 00:29:58 — Установка openapi-fetch 00:31:17 — ApiHub и MusicFun: вводная 00:33:20 — Запуск проекта, первый запрос к API 00:35:15 — Осмысление первого запроса 00:37:25 — Генерируем код 00:38:42 — Настройка openapi-fetch, первый запрос 00:43:12 — Архитектура: кэш API-слой 00:48:09 — Подключаем QueryClient, первый useQuery 00:57:36 — Много одинаковых vs один запрос 01:01:12 — Рендеринг плейлистов 01:04:01 — WebSocket из WebStorm (HMR) 01:05:36 — staleTime 01:11:50 — gcTime 01:14:36 — DevTools 01:17:36 — refetchOnMount / refetchOnFocus 01:19:17 — refetchOnReconnect 01:20:38 — defaultOptions — гибкость 01:23:41 — CSS styles 01:25:41 — Настройка TanStack Router 01:35:17 — Header 01:38:17 — Preloader / skeleton / status / fetchStatus 01:55:29 — Errors 02:04:29 — Retry 02:08:23 — Pagination 02:09:09 — Ссылка на «самурайское» видео о пагинации 02:18:47 — placeholderData 02:21:35 — AbortController 02:28:31 — Object as queryKey 02:33:43 — OAuth2, useMutation для login 03:35:17 — Middleware, accessToken 03:36:09 — invalidateQueries 03:27:34 — Logout, resetQueries 03:36:21 — Ротация access / refresh tokens 03:56:49 — My playlists, redirect если anonymous 04:03:02 — Add playlist 04:18:25 — refetchType 04:20:54 — Delete playlist 04:27:01 — setQueries 04:38:42 — Edit playlist 04:53:26 — enabled 05:01:26 — Optimistic update 05:25:11 — Key factory for playlists 05:34:11 — queryOptions 05:36:14 — usePlaylistsQuery 05:42:29 — Auth keyFactory 05:43:56 — useAddPlaylistMutation 05:46:15 — useDeletePlaylistMutation 05:49:26 — usePlaylistQuery 05:51:55 — useUpdatePlaylistMutation 06:00:41 — Config / env-vars / LocalStorage keys 06:06:26 — Bug-fix EditPlaylistForm 06:08:31 — hideForm after delete (callback) 06:11:41 — Продолжаем фикс 06:14:57 — Close edit form; callback vs mutateAsync 06:20:26 — AddPlaylistForm: callback vs mutateAsync 06:22:26 — Process errors 06:25:56 — Server error format (JSON API) 06:34:44 — Apply error factory (Edit Form) 06:38:20 — react-toastify 06:40:22 — Global error handling, mutationCache 06:42:50 — meta
Hide player controls
Hide resume playing