Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Gegevens Ophalen met createAsyncThunk | Asynchrone Logica Afhandelen met Redux Toolkit
Statusbeheer met Redux Toolkit in React

bookGegevens Ophalen met createAsyncThunk

Veeg om het menu te tonen

Wat je gaat bouwen

Gegevens ophalen van een API met Redux Toolkit.

Een asynchrone actie aanmaken

Redux Toolkit biedt createAsyncThunk om asynchrone logica af te handelen.

import { createAsyncThunk } from '@reduxjs/toolkit';

export const fetchPosts = createAsyncThunk(
  'posts/fetchPosts',
  async () => {
    const response = await fetch('https://jsonplaceholder.typicode.com/posts');
    return response.json();
  }
);

Verbinden met de slice

De asynchrone actie afhandelen binnen de slice:

import { createSlice } from '@reduxjs/toolkit';
import { fetchPosts } from './postsThunk';

const postsSlice = createSlice({
  name: 'posts',
  initialState: {
    items: [],
    status: 'idle',
    error: null
  },
  reducers: {},
  extraReducers: (builder) => {
    builder
      .addCase(fetchPosts.pending, (state) => {
        state.status = 'loading';
      })
      .addCase(fetchPosts.fulfilled, (state, action) => {
        state.status = 'succeeded';
        state.items = action.payload;
      })
      .addCase(fetchPosts.rejected, (state, action) => {
        state.status = 'failed';
        state.error = action.error.message;
      });
  }
});

export default postsSlice.reducer;

Met createAsyncThunk kun je asynchrone logica op een gestructureerde manier afhandelen. Het houdt automatisch de laad-, succes- en foutstatussen bij.

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 5. Hoofdstuk 2

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Sectie 5. Hoofdstuk 2
some-alt