Verständnis der Rolle von Reducern
Theorie
Reducer sind reine Funktionen, die festlegen, wie sich der Zustand als Reaktion auf ausgelöste Aktionen ändern soll. Indem sie den aktuellen Zustand und eine Aktion als Parameter übernehmen, geben Reducer den neuen Zustand der Anwendung zurück.
Praxis
Im reducers
-Ordner unseres Projekts befindet sich die Datei counterReducer.js
, in der wir den Reducer für unsere Zählerfunktionalität definieren:
import { createReducer } from "@reduxjs/toolkit";
import { increment, decrement } from "../actions/counterAction.js";
const initialState = 0;
const counterReducer = createReducer(initialState,
(builder) => {
builder
.addCase(increment, (state) => state + 1)
.addCase(decrement, (state) => state - 1);
});
export default counterReducer;
Code-Erklärung:
- Zeile 1: Import der Funktion
createReducer
aus dem Paket@reduxjs/toolkit
. Diese Funktion wird verwendet, um Reducer in Redux zu erstellen; - Zeile 2: Import der Action Creator
increment
unddecrement
aus der Datei../actions/counterAction.js
. Diese Action Creator definieren die Aktionen, die vom Reducer verarbeitet werden; - Zeile 4: Setzen der Konstante
initialState
auf0
. Dies stellt den Anfangswert des Zählers im Redux Store dar; - Zeile 6: Verwendung der Funktion
createReducer
zur Definition descounterReducer
; - Zeile 6-11: Die Funktion
createReducer
nimmt zwei Argumente entgegen: deninitialState
und eine Callback-Funktion, die festlegt, wie der Zustand basierend auf ausgelösten Aktionen aktualisiert werden soll; - Zeile 7: Verwendung des Objekts
builder
, um die Fälle für verschiedene Aktionen innerhalb der Callback-Funktion zu definieren; - Zeile 9, 10: Mit der Methode
addCase
desbuilder
-Objekts wird festgelegt, wie der Zustand aktualisiert werden soll, wenn bestimmte Aktionen wieincrement
unddecrement
ausgelöst werden; - Zeile 9, 10: Die Callback-Funktion innerhalb von
addCase
nimmt den aktuellen Zustand (state
) als Argument und gibt den neuen Zustand nach Anwendung der entsprechenden Aktion zurück; - In diesem Fall wird beim Auslösen der Aktion
increment
der Zustand um1
erhöht; beim Auslösen der Aktiondecrement
wird der Zustand um1
verringert; - Zeile 13: Abschließend wird der
counterReducer
als Standardexport des Moduls exportiert.
Hinweis
Zusammenfassend übernimmt der
counterReducer
die ausgelösten Aktionen und aktualisiert entsprechend den Zählerzustand im Redux Store.
1. Welche Funktion wird in Redux verwendet, um Reducer zu erstellen?
2. Welchen Zweck erfüllt das builder
-Objekt im Code?
3. Was passiert mit dem Zustand, wenn die increment
-Aktion ausgelöst wird?
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Awesome!
Completion rate improved to 4.17
Verständnis der Rolle von Reducern
Swipe um das Menü anzuzeigen
Theorie
Reducer sind reine Funktionen, die festlegen, wie sich der Zustand als Reaktion auf ausgelöste Aktionen ändern soll. Indem sie den aktuellen Zustand und eine Aktion als Parameter übernehmen, geben Reducer den neuen Zustand der Anwendung zurück.
Praxis
Im reducers
-Ordner unseres Projekts befindet sich die Datei counterReducer.js
, in der wir den Reducer für unsere Zählerfunktionalität definieren:
import { createReducer } from "@reduxjs/toolkit";
import { increment, decrement } from "../actions/counterAction.js";
const initialState = 0;
const counterReducer = createReducer(initialState,
(builder) => {
builder
.addCase(increment, (state) => state + 1)
.addCase(decrement, (state) => state - 1);
});
export default counterReducer;
Code-Erklärung:
- Zeile 1: Import der Funktion
createReducer
aus dem Paket@reduxjs/toolkit
. Diese Funktion wird verwendet, um Reducer in Redux zu erstellen; - Zeile 2: Import der Action Creator
increment
unddecrement
aus der Datei../actions/counterAction.js
. Diese Action Creator definieren die Aktionen, die vom Reducer verarbeitet werden; - Zeile 4: Setzen der Konstante
initialState
auf0
. Dies stellt den Anfangswert des Zählers im Redux Store dar; - Zeile 6: Verwendung der Funktion
createReducer
zur Definition descounterReducer
; - Zeile 6-11: Die Funktion
createReducer
nimmt zwei Argumente entgegen: deninitialState
und eine Callback-Funktion, die festlegt, wie der Zustand basierend auf ausgelösten Aktionen aktualisiert werden soll; - Zeile 7: Verwendung des Objekts
builder
, um die Fälle für verschiedene Aktionen innerhalb der Callback-Funktion zu definieren; - Zeile 9, 10: Mit der Methode
addCase
desbuilder
-Objekts wird festgelegt, wie der Zustand aktualisiert werden soll, wenn bestimmte Aktionen wieincrement
unddecrement
ausgelöst werden; - Zeile 9, 10: Die Callback-Funktion innerhalb von
addCase
nimmt den aktuellen Zustand (state
) als Argument und gibt den neuen Zustand nach Anwendung der entsprechenden Aktion zurück; - In diesem Fall wird beim Auslösen der Aktion
increment
der Zustand um1
erhöht; beim Auslösen der Aktiondecrement
wird der Zustand um1
verringert; - Zeile 13: Abschließend wird der
counterReducer
als Standardexport des Moduls exportiert.
Hinweis
Zusammenfassend übernimmt der
counterReducer
die ausgelösten Aktionen und aktualisiert entsprechend den Zählerzustand im Redux Store.
1. Welche Funktion wird in Redux verwendet, um Reducer zu erstellen?
2. Welchen Zweck erfüllt das builder
-Objekt im Code?
3. Was passiert mit dem Zustand, wenn die increment
-Aktion ausgelöst wird?
Danke für Ihr Feedback!