Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Gjengivelse av Datasamlinger i React | Grunnleggende om React og Komponentbasert Brukergrensesnitt
React Mastery

bookGjengivelse av Datasamlinger 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 av 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 lar oss iterere gjennom hvert element i arrayet, hente ut verdien, og generere spesifikk markup basert på dataene til hvert element.

Full 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 streng-prop 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å re-rendres og re-opprettes 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.

Merk

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

Det anbefales ofte å bruke identifikatorer, som id-verdier fra backend-data, som key-props. 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-props 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 med data.

Full 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 1. Kapittel 14

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

Awesome!

Completion rate improved to 2.17

bookGjengivelse av Datasamlinger 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 av 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 lar oss iterere gjennom hvert element i arrayet, hente ut verdien, og generere spesifikk markup basert på dataene til hvert element.

Full 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 streng-prop 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å re-rendres og re-opprettes 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.

Merk

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

Det anbefales ofte å bruke identifikatorer, som id-verdier fra backend-data, som key-props. 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-props 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 med data.

Full 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 1. Kapittel 14
some-alt