Forstå Rollen til Reducers
Teori
Redusere er rene funksjoner som spesifiserer hvordan tilstanden skal endres som respons på sendte handlinger. Ved å ta inn gjeldende tilstand og en handling som parametere, returnerer redusere den nye tilstanden til applikasjonen.
Praksis
I prosjektets reducers-mappe har vi filen counterReducer.js hvor vi definerer reduseren for tellefunksjonaliteten vår:
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;
Kodeforklaring:
- Linje 1: Importerer funksjonen 
createReducerfra pakken@reduxjs/toolkit. Denne funksjonen brukes til å lage redusere i Redux; - Linje 2: Importerer 
incrementogdecrementaction creators fra filen../actions/counterAction.js. Disse action creators brukes til å definere handlingene som reduseren skal håndtere; - Linje 4: Setter konstanten 
initialStatetil0. Dette representerer startverdien til telleren i Redux store; - Linje 6: Bruker funksjonen 
createReducerfor å definerecounterReducer; - Linje 6-11: Funksjonen 
createReducertar to argumenter:initialStateog en callback-funksjon som definerer hvordan tilstanden skal oppdateres basert på sendte handlinger; - Linje 7: Bruker objektet 
builderfor å definere tilfeller for ulike handlinger inne i callback-funksjonen; - Linje 9, 10: Bruker metoden 
addCasetilbuilder-objektet for å definere hvordan tilstanden skal oppdateres når spesifikke handlinger, somincrementogdecrement, sendes; - Linje 9, 10: Callback-funksjonen inne i 
addCasetar gjeldende tilstand (state) som et argument og returnerer den nye tilstanden etter å ha brukt den tilsvarende handlingen; - I dette tilfellet, når handlingen 
incrementsendes, økes tilstanden med1; når handlingendecrementsendes, reduseres tilstanden med1; - Linje 13: Til slutt eksporteres 
counterReducersom standardeksport for modulen. 
Merk
Oppsummert vil
counterReducerhåndtere de sendte handlingene og oppdatere tellerens tilstand tilsvarende i Redux store.
1. Hvilken funksjon brukes for å opprette reducers i Redux?
2. Hva er formålet med builder-objektet i koden?
3. Hva skjer med tilstanden når increment-actionen sendes?
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Awesome!
Completion rate improved to 4.17
Forstå Rollen til Reducers
Sveip for å vise menyen
Teori
Redusere er rene funksjoner som spesifiserer hvordan tilstanden skal endres som respons på sendte handlinger. Ved å ta inn gjeldende tilstand og en handling som parametere, returnerer redusere den nye tilstanden til applikasjonen.
Praksis
I prosjektets reducers-mappe har vi filen counterReducer.js hvor vi definerer reduseren for tellefunksjonaliteten vår:
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;
Kodeforklaring:
- Linje 1: Importerer funksjonen 
createReducerfra pakken@reduxjs/toolkit. Denne funksjonen brukes til å lage redusere i Redux; - Linje 2: Importerer 
incrementogdecrementaction creators fra filen../actions/counterAction.js. Disse action creators brukes til å definere handlingene som reduseren skal håndtere; - Linje 4: Setter konstanten 
initialStatetil0. Dette representerer startverdien til telleren i Redux store; - Linje 6: Bruker funksjonen 
createReducerfor å definerecounterReducer; - Linje 6-11: Funksjonen 
createReducertar to argumenter:initialStateog en callback-funksjon som definerer hvordan tilstanden skal oppdateres basert på sendte handlinger; - Linje 7: Bruker objektet 
builderfor å definere tilfeller for ulike handlinger inne i callback-funksjonen; - Linje 9, 10: Bruker metoden 
addCasetilbuilder-objektet for å definere hvordan tilstanden skal oppdateres når spesifikke handlinger, somincrementogdecrement, sendes; - Linje 9, 10: Callback-funksjonen inne i 
addCasetar gjeldende tilstand (state) som et argument og returnerer den nye tilstanden etter å ha brukt den tilsvarende handlingen; - I dette tilfellet, når handlingen 
incrementsendes, økes tilstanden med1; når handlingendecrementsendes, reduseres tilstanden med1; - Linje 13: Til slutt eksporteres 
counterReducersom standardeksport for modulen. 
Merk
Oppsummert vil
counterReducerhåndtere de sendte handlingene og oppdatere tellerens tilstand tilsvarende i Redux store.
1. Hvilken funksjon brukes for å opprette reducers i Redux?
2. Hva er formålet med builder-objektet i koden?
3. Hva skjer med tilstanden når increment-actionen sendes?
Takk for tilbakemeldingene dine!