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:
export default function Child({text1, text2}) {
return <p>
child
</p>;
}
Esitetään ne komponentin merkintäkielessä:
export default function Child({text1, text2}) {
return <p>
child
{text1}
{text2}
</p>;
}
Oletetaan, että vanhempikomponentissa tuodaan lapsikomponenttimme:
import Child from '@/comp/child/child.jsx';
export default function Test() {
return <>
<h1>Test</h1>
<Child />
</>;
}
Välitetään lapsikomponenttiin dataa vanhempikomponentista:
import Child from '@/comp/child/child.jsx';
export default function Test() {
return <>
<h1>Test</h1>
<Child text1="aaa" text2="bbb" />
</>;
}
Tee lapsikomponentti Product
tuotteen näyttämiseen. Olkoon, että propsien kautta
välitetään tuotteen nimi ja hinta.
Olkoon annettu seuraava taulukko tuotteita:
let 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.