Grundlæggende termer i Redux
I denne lektion vil vi kort gennemgå de grundlæggende begreber og termer, som er nødvendige for at lære Redux videre.
Vi starter med handling (action).
Dette er en begivenhed, som
beskriver, hvad der er sket i vores
applikation. Teknisk set er det et almindeligt
JavaScript objekt,
der indeholder et felt type, hvor vi skriver
handlingens navn.
Det andet vigtige felt i handlingsobjektet
er feltet payload.
Det vil indeholde handlingens nyttelast
(payload).
Med nyttelast menes
nogle data, der overføres
som parametre til handlingen.
Der kan også være andre felter i dette objekt med yderligere information.
Lad os for eksempel oprette en handling
og kalde den addOrderAction. Lad
den være ansvarlig for at tilføje en ordre.
Derfor vil vi i egenskaben type angive, at
ordren er tilføjet (orderAdded) til ordrerne
(orders). Og i payload angiver vi nærmere,
hvilken ordre det er, for eksempel - at male
en væg:
const addOrderAction = {
type: 'orders/orderAdded',
payload: 'Paint a wall'
}
For ikke at skulle skrive handlingsobjektet
manuelt hver gang, kan vi bruge
såkaldte action creators - en funktion,
som opretter og returnerer
et handlingsobjekt til os. Lad os kalde den
addOrder. Som parameter vil vi
sende den den ønskede tekst til
egenskaben payload:
const addOrder = text => {
return {
type: 'orders/orderAdded',
payload: text
}
}
Det næste vigtige begreb i kæden er reducer (reducer) - en funktion, som tager den aktuelle tilstand og et handlingsobjekt. Denne funktion beslutter, hvordan tilstanden skal opdateres og returnerer den opdaterede state, hvis det er nødvendigt.
Næste begreb - store (store) - er et objekt, hvor den aktuelle globale tilstand i Redux-applikationen opbevares. Dette objekt har en metode kaldet getState, som man kan bruge til at få den aktuelle værdi af staten.
Storen har også en metode kaldet dispatch. At kalde den og sende et handlingsobjekt er den eneste måde at ændre staten på. Som et resultat vil storen køre reducer-funktionen og gemme den nye statsværdi.
Og det sidste begreb, som vi vil se på i denne lektion - er selectors (selektorer). Selektorer er specielle funktioner, som ved, hvordan man udtrækker information fra staten i storen. Disse funktioner viser sig at være særligt nyttige, når applikationen vokser, og de hjælper med at undgå kodeduplikering.
Mere om alle disse begreber og om anvendelsen af dem i praksis vil vi lære i de følgende afsnit af denne vejledning.