Komponenttien propsit NextJS:ssä

NextJS:ssä, aivan kuten Reactissa, dataa vanhempikomponenteista lapsikomponentteihin voidaan välittää propsien kautta.

Katsotaan kuinka tämä tehdään käytännössä. Oletetaan, että lapsikomponenttimme voi vastaanottaa propseja:

src/comp/child/child.jsxexport default function Child({text1, text2}) {
  return <p>
    child
  </p>;
}

Esitetään ne komponentin merkintäkielessä:

src/comp/child/child.jsxexport default function Child({text1, text2}) {
  return <p>
    child
    {text1}
    {text2}
  </p>;
}

Oletetaan, että vanhempikomponentissa tuodaan lapsikomponenttimme:

src/app/test/page.jsximport Child from '@/comp/child/child.jsx';

export default function Test() {
  return <>
    <h1>Test</h1>
    <Child />
  </>;
}

Välitetään lapsikomponenttiin dataa vanhempikomponentista:

src/app/test/page.jsximport Child from '@/comp/child/child.jsx';

export default function Test() {
  return <>
    <h1>Test</h1>
    <Child text1="aaa" text2="bbb" />
  </>;
}
Задание 1

Tee lapsikomponentti Product tuotteen näyttämiseen. Olkoon, että propsien kautta välitetään tuotteen nimi ja hinta.

Задание 2

Olkoon annettu seuraava taulukko tuotteita:

prods.jslet prods = [
  {
    id: 1,
    name: 'prod1',
    cost: 100,
  },
  {
    id: 2,
    name: 'prod2',
    cost: 200,
  },
  {
    id: 3,
    name: 'prod3',
    cost: 300,
  },
];

Näytä silmukassa tuotteiden tiedot, käyttäen lapsikomponenttia Product.