RTK Query: endpointy i automatyczne buforowanie
Definiowanie endpointów zapytań i mutacji za pomocą createApi oraz przekazywanie zarządzania buforowaniem do RTK Query.
RTK Query: endpointy i automatyczne buforowanie to bezpłatna lekcja React Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej React Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs React Academy zawiera 4 lekcji w sumie.
Wprowadzenie
Czym jest RTK Query?
Tworzenie API za pomocą createApi
import { createApi, fetchBaseQuery } from '@reduxjs/toolkit/query/react';
export const userApi = createApi({
reducerPath: 'userApi',
baseQuery: fetchBaseQuery({ baseUrl: '/api' }),
endpoints: (builder) => ({
getUser: builder.query({ query: (id) => '/users/' + id }),
getUsers: builder.query({ query: () => '/users' }),
}),
});
export const { useGetUserQuery, useGetUsersQuery } = userApi;Dodawanie API do store
import { configureStore } from '@reduxjs/toolkit';
import { userApi } from './userApi';
export const store = configureStore({
reducer: { [userApi.reducerPath]: userApi.reducer },
middleware: (gDM) => gDM().concat(userApi.middleware),
});Używanie hooka zapytania
function UserCard({ id }) {
const { data, isLoading, isError } = useGetUserQuery(id);
if (isLoading) return <Spinner />;
if (isError) return <p>Error</p>;
return <p>{data.name}</p>;
}Automatyczne usuwanie duplikatów
TTL cache’a z keepUnusedDataFor
endpoints: (builder) => ({
getUser: builder.query({
query: id => '/users/' + id,
keepUnusedDataFor: 300, // 5 minutes
}),
})Odpytywanie w celu uzyskania aktualnych danych
const { data } = useGetStatsQuery(undefined, {
pollingInterval: 5000, // refetch every 5 seconds
});Argumenty zapytania i pomijanie
const { data } = useGetUserQuery(userId, { skip: !userId });Przekształcanie odpowiedzi
getUsers: builder.query({
query: () => '/users',
transformResponse: (raw) => raw.data.users,
})Szybkie sprawdzenie
Podsumowanie
Następna lekcja
Często zadawane pytania
Czy lekcja „RTK Query: endpointy i automatyczne buforowanie” jest bezpłatna?
Tak — pełny tekst „RTK Query: endpointy i automatyczne buforowanie” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu React Academy, przejdź na CoddyKit PRO. Kurs React Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „RTK Query: endpointy i automatyczne buforowanie”?
Definiowanie endpointów zapytań i mutacji za pomocą createApi oraz przekazywanie zarządzania buforowaniem do RTK Query. Ćwiczysz React Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć React Academy?
Nie wymagamy żadnego doświadczenia. React Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.
Ile czasu zajmuje lekcja „RTK Query: endpointy i automatyczne buforowanie”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji React Academy?
Tak. Każda lekcja React Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Slice'y Redux Toolkit i createSlice
- Logika asynchroniczna z createAsyncThunk
- RTK Query: endpointy i automatyczne buforowanie
- Optymistyczne aktualizacje i unieważnianie cache