Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Gjengivelse av Lister med Data i React | Gjenbrukbare Komponenter og Dataflyt
Introduksjon til React

bookGjengivelse av Lister med Data i React

Når man arbeider med moderne webapplikasjoner, er det vanlig å vise samlinger av data mottatt fra backend. For å oppnå dette benytter vi map()-metoden. Inne i map()-metoden bruker vi en callback-funksjon og returnerer JSX for å vise ønsket resultat.

La oss ta et eksempel for å illustrere hvordan dette fungerer. Vi har en App-komponent som sender prop-en toys, et array med objekter. ToyCard-komponenten benytter map()-metoden for å vise hver leke i arrayet.

// Data from backend
const toysData = [
  { id: "id-1", name: "Rainbow Sparkle Unicorn Plush" },
  { id: "id-2", name: "Jungle Adventure Playset" },
  { id: "id-3", name: "Magical Princess Castle Dollhouse" },
  { id: "id-4", name: "RoboBot Transformer Robot" },
  { id: "id-5", name: "SuperBlast Action Figure" },
];

// Child component
const ToyCard = (props) => (
  <ul>
    {props.toys.map((toy) => (
      <li>{toy.name}</li>
    ))}
  </ul>
);

// Parent component
const App = () => (
  <>
    <ToyCard toys={toysData} />
  </>
);

I linjene 13-15 ser vi bruk av map()-metoden. Den gjør det mulig å iterere gjennom hvert element i arrayet, hente ut verdien, og generere spesifikk markup basert på dataene til hvert element.

Fullstendig app-kode:

Hvis vi derimot følger med på konsollen, kan vi se at vi får advarselen: Each child in a list should have a unique "key" prop..

Nøkkel

Nøkkel er en avgjørende strengprop som må tildeles når man oppretter elementer i en samling.

React bruker nøkler for å sikre en stabil identitet for elementer i en samling. Disse nøklene gjør det mulig for React å identifisere hvilke elementer som må gjengis på nytt og opprettes på nytt når endringer skjer, i stedet for å gjenskape hele samlingen. Bruk av nøkler forhindrer unødvendig gjenskapelse av elementer, noe som gir bedre ytelse.

Note
Merk

Nøkkelen må være unik blant nærliggende elementer. Den bør forbli konstant og ikke endres over tid.

Det anbefales ofte å bruke identifikatorer, som id-verdier fra backend-data, som key-prop. Denne praksisen gjør at React effektivt kan identifisere og håndtere individuelle elementer i en samling.

La oss rette opp vår forrige app ved å bruke key-prop for elementene:

// Data from backend
const toysData = [
  { id: "id-1", name: "Rainbow Sparkle Unicorn Plush" },
  { id: "id-2", name: "Jungle Adventure Playset" },
  { id: "id-3", name: "Magical Princess Castle Dollhouse" },
  { id: "id-4", name: "RoboBot Transformer Robot" },
  { id: "id-5", name: "SuperBlast Action Figure" },
];

// Child component
const ToyCard = (props) => (
  <ul>
    {props.toys.map((toy) => (
      <li key={toy.id}>{toy.name}</li>
    ))}
  </ul>
);

// Parent component
const App = () => (
  <>
    <ToyCard toys={toysData} />
  </>
);

Linje 14: key-propen settes på elementet som skal rendres flere ganger i en array av data.

Fullstendig app-kode:

1. Hvilken metode brukes vanligvis for å rendre samlinger av data mottatt fra backend i React?

2. Hvorfor er det viktig å tildele en key-prop til elementer i en samling i React?

3. Hva må verdien til key-prop være for å sikre en stabil identitet for elementer i en samling?

question mark

Hvilken metode brukes vanligvis for å rendre samlinger av data mottatt fra backend i React?

Select the correct answer

question mark

Hvorfor er det viktig å tildele en key-prop til elementer i en samling i React?

Select the correct answer

question mark

Hva må verdien til key-prop være for å sikre en stabil identitet for elementer i en samling?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 6

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

bookGjengivelse av Lister med Data i React

Sveip for å vise menyen

Når man arbeider med moderne webapplikasjoner, er det vanlig å vise samlinger av data mottatt fra backend. For å oppnå dette benytter vi map()-metoden. Inne i map()-metoden bruker vi en callback-funksjon og returnerer JSX for å vise ønsket resultat.

La oss ta et eksempel for å illustrere hvordan dette fungerer. Vi har en App-komponent som sender prop-en toys, et array med objekter. ToyCard-komponenten benytter map()-metoden for å vise hver leke i arrayet.

// Data from backend
const toysData = [
  { id: "id-1", name: "Rainbow Sparkle Unicorn Plush" },
  { id: "id-2", name: "Jungle Adventure Playset" },
  { id: "id-3", name: "Magical Princess Castle Dollhouse" },
  { id: "id-4", name: "RoboBot Transformer Robot" },
  { id: "id-5", name: "SuperBlast Action Figure" },
];

// Child component
const ToyCard = (props) => (
  <ul>
    {props.toys.map((toy) => (
      <li>{toy.name}</li>
    ))}
  </ul>
);

// Parent component
const App = () => (
  <>
    <ToyCard toys={toysData} />
  </>
);

I linjene 13-15 ser vi bruk av map()-metoden. Den gjør det mulig å iterere gjennom hvert element i arrayet, hente ut verdien, og generere spesifikk markup basert på dataene til hvert element.

Fullstendig app-kode:

Hvis vi derimot følger med på konsollen, kan vi se at vi får advarselen: Each child in a list should have a unique "key" prop..

Nøkkel

Nøkkel er en avgjørende strengprop som må tildeles når man oppretter elementer i en samling.

React bruker nøkler for å sikre en stabil identitet for elementer i en samling. Disse nøklene gjør det mulig for React å identifisere hvilke elementer som må gjengis på nytt og opprettes på nytt når endringer skjer, i stedet for å gjenskape hele samlingen. Bruk av nøkler forhindrer unødvendig gjenskapelse av elementer, noe som gir bedre ytelse.

Note
Merk

Nøkkelen må være unik blant nærliggende elementer. Den bør forbli konstant og ikke endres over tid.

Det anbefales ofte å bruke identifikatorer, som id-verdier fra backend-data, som key-prop. Denne praksisen gjør at React effektivt kan identifisere og håndtere individuelle elementer i en samling.

La oss rette opp vår forrige app ved å bruke key-prop for elementene:

// Data from backend
const toysData = [
  { id: "id-1", name: "Rainbow Sparkle Unicorn Plush" },
  { id: "id-2", name: "Jungle Adventure Playset" },
  { id: "id-3", name: "Magical Princess Castle Dollhouse" },
  { id: "id-4", name: "RoboBot Transformer Robot" },
  { id: "id-5", name: "SuperBlast Action Figure" },
];

// Child component
const ToyCard = (props) => (
  <ul>
    {props.toys.map((toy) => (
      <li key={toy.id}>{toy.name}</li>
    ))}
  </ul>
);

// Parent component
const App = () => (
  <>
    <ToyCard toys={toysData} />
  </>
);

Linje 14: key-propen settes på elementet som skal rendres flere ganger i en array av data.

Fullstendig app-kode:

1. Hvilken metode brukes vanligvis for å rendre samlinger av data mottatt fra backend i React?

2. Hvorfor er det viktig å tildele en key-prop til elementer i en samling i React?

3. Hva må verdien til key-prop være for å sikre en stabil identitet for elementer i en samling?

question mark

Hvilken metode brukes vanligvis for å rendre samlinger av data mottatt fra backend i React?

Select the correct answer

question mark

Hvorfor er det viktig å tildele en key-prop til elementer i en samling i React?

Select the correct answer

question mark

Hva må verdien til key-prop være for å sikre en stabil identitet for elementer i en samling?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 6
some-alt