⊗jsrtPmDtOAOp 76 of 112 menu

Opérations réactives sur des tableaux d'objets dans React

Apprenons maintenant à effectuer des opérations réactives sur des tableaux d'objets. Dans ce cas, nous devons passer à la fonction l'id de l'élément du tableau avec lequel nous allons faire quelque chose :

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>; }

Pour faire quelque chose avec un élément, nous devons d'abord le trouver en parcourant tout le tableau avec une boucle :

function App() { ... function doSmth(id) { setNotes(notes.map(note => { if (note.id === id) { // faire quelque chose avec l'élément } return note; })); } }

Prenons un exemple et modifions les textes de l'objet trouvé :

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

À la fin de chaque li, ajoutez un bouton, en cliquant sur lequel ce li sera supprimé de la liste.

Trois champs de saisie sont donnés. À la fin de chaque li ajoutez un bouton, en cliquant sur lequel les données de l'objet de ce li seront placées dans les champs de saisie correspondants.

Modifiez la tâche précédente pour qu'à côté des champs de saisie se trouve un bouton, en cliquant sur lequel les données des champs de saisie seront placées dans le li correspondant.

Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser