RTK Query: เอนด์พอยต์และการแคชอัตโนมัติ
กำหนดเอนด์พอยต์สำหรับ query และ mutation ด้วย createApi แล้วให้ RTK Query จัดการการแคช
RTK Query: เอนด์พอยต์และการแคชอัตโนมัติ เป็นบทเรียน React Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน React Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส React Academy มีบทเรียนทั้งหมด 4 บทเรียน
ยินดีต้อนรับ
RTK Query คืออะไร
การสร้าง API ด้วย 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;การเพิ่ม API ลงใน 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),
});การใช้ Query Hook
function UserCard({ id }) {
const { data, isLoading, isError } = useGetUserQuery(id);
if (isLoading) return <Spinner />;
if (isError) return <p>Error</p>;
return <p>{data.name}</p>;
}การรวมคำขอซ้ำโดยอัตโนมัติ
อายุแคชด้วย keepUnusedDataFor
endpoints: (builder) => ({
getUser: builder.query({
query: id => '/users/' + id,
keepUnusedDataFor: 300, // 5 minutes
}),
})การดึงข้อมูลเป็นระยะสำหรับข้อมูลสด
const { data } = useGetStatsQuery(undefined, {
pollingInterval: 5000, // refetch every 5 seconds
});อาร์กิวเมนต์ของ Query และการข้ามการเรียก
const { data } = useGetUserQuery(userId, { skip: !userId });การแปลงการตอบกลับ
getUsers: builder.query({
query: () => '/users',
transformResponse: (raw) => raw.data.users,
})ตรวจสอบด่วน
สรุปทบทวน
ขั้นถัดไป
คำถามที่พบบ่อย
บทเรียน “RTK Query: เอนด์พอยต์และการแคชอัตโนมัติ” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “RTK Query: เอนด์พอยต์และการแคชอัตโนมัติ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส React Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส React Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “RTK Query: เอนด์พอยต์และการแคชอัตโนมัติ”
กำหนดเอนด์พอยต์สำหรับ query และ mutation ด้วย createApi แล้วให้ RTK Query จัดการการแคช คุณปฏิบัติ React Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน React Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน React Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “RTK Query: เอนด์พอยต์และการแคชอัตโนมัติ” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน React Academy นี้ได้ไหม
ได้ บทเรียน React Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- สไลซ์ Redux Toolkit และ createSlice
- ตรรกะแบบอะซิงก์ด้วย createAsyncThunk
- RTK Query: เอนด์พอยต์และการแคชอัตโนมัติ
- การอัปเดตเชิงคาดการณ์และการทำให้แคชเป็นโมฆะ