⊗jsrtPmCpPr 81 of 112 menu

Пропс компоненти у React-у

У претходној лекцији смо приказали неколико инстанци производа:

function App() { return <div> <Product /> <Product /> <Product /> </div>; }

Засад сваки позив тага производа приказује исту ствар на екрану. Хајде сада да учинимо сваки производ јединственим.

Нека, на пример, сваки производ има назив и цену. Учинимо тако да сваки позив тага производа прикаже производ са својим именом и ценом, форматираним у жељени изглед.

За то треба да предузмемо неколико корака.

За почетак, при позиву тага производа, у таг ћемо уписати два атрибута: атрибут name са називом производа и атрибут cost са ценом, ево овако:

function App() { return <div> <Product name="product1" cost="100" /> <Product name="product2" cost="200" /> <Product name="product3" cost="300" /> </div>; }

Имена и вредности ових атрибута ће стизати у виду објекта у први параметар функције-конструктора наше компоненте Product:

function Product(props) { console.log(props); // објекат са кључевима name и cost return <p> product </p>; }

Име параметра може бити било које, али у React-у је уобичајено да се зове props. То заправо није само име параметра, већ важна концепција React-а.

Суштина ове концепције је следећа: при позиву тага компоненте у таг се могу уписати атрибути са подацима. Ови подаци ће стизати у пропсе компоненте. Затим компонента може да користи те податке, на пример, за формирање жељеног изгледа.

Хајде да то урадимо:

function Product(props) { return <p> name: <span>{props.name}</span>, cost: <span>{props.cost}</span> </p>; }

Погодније и уобичајеније је да се не користи објекат props, већ одмах изврши деструктурирање пропса директно у параметрима функције:

function Product({ name, cost }) { return <p> name: <span>{name}</span>, cost: <span>{cost}</span> </p>; }

Направите компоненту Employee која приказује податке запосленог на екрану. Нека ти подаци буду презиме, име, име оца и плата. Форматирајте те податке у жељени изглед. Прикажите у компоненти App три запослена са различитим подацима.

Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј