⊗jsrtPmDtOAOp 76 of 112 menu

Reaktiva operationer på arrayer av objekt i React

Låt oss nu lära oss att göra reaktiva operationer på arrayer av objekt. I detta fall måste vi skicka till funktionen id för arrayelementet som vi ska göra något med:

function App() { const [notes, setNotes] = useState(initNotes); const result = notes.map(note => { return <li key={note.id}> <span>{note.prop1}</span> <span>{note.prop2}</span> <span>{note.prop3}</span> <button onClick={() => doSmth(note.id)}> btn </button> </li>; }); return <div> <ul> {result} </ul> </div>; }

För att göra något med ett element måste vi först hitta det genom att iterera igenom hela arrayen med en loop:

function App() { ... function doSmth(id) { setNotes(notes.map(note => { if (note.id === id) { // gör något med elementet } return note; })); } }

Låt oss som exempel ändra texterna i det hittade objektet:

function App() { ... function doSmth(id) { setNotes(notes.map(note => { if (note.id === id) { note.prop1 += '!'; note.prop2 += '!'; note.prop3 += '!'; return note; } return note; })); } }

Gör en knapp i slutet av varje li, vid klick på vilken denna li kommer att raderas från listan.

Det finns tre inmatningsfält. Gör en knapp i slutet av varje li, vid klick på vilken data från denna li:s objekt kommer att placeras i motsvarande inmatningsfält.

Modifiera föregående uppgift så att det bredvid inmatningsfälten finns en knapp, vid klick på vilken data från inmatningsfälten kommer att placeras i motsvarande li.

Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa