J'ai ce Voici ce que j'ai essayé: p> JSON code> et je vous demandais s'il y a un moyen de faire une liste sans avoir à spécifier une clé.
"items": [
{
"id": 1,
"firstName": "Alan",
"lastName": "Smith"
},
{
"id": 2,
"firstName": "John",
"lastName": "Something"
}
]
4 Réponses :
Essayez ceci:
return( names.map( name => { <Item key={name.id + name}> <IdName>{name.id}</IdName> <FirstName>{name.firstName}</FirstName> <LastName>{name.lastName}</LastName> </Item> )}
Votre syntaxe n'a pas l'air bien. Essayez
i code> est
non défini code>, vous voulez dire
carte ((nom, i) => ...) code>, je crois
Ah, j'ai copié - collé la mauvaise ligne.
Je reçois toujours la même erreur, peut-être, c'est de mon Json?
Avez-vous remplacé vos bretelles bouclées { code> avec
( code>? Car avec
/ * ... * / => { code> et aucune déclaration de retour explicite, le La fonction renvoie
non défini code>.
return( names.map = (name, index) => { <Item key={index}> <IdName>{name.id}</IdName> <FirstName>{name.firstName}</FirstName> <LastName>{name.lastName}</LastName> </Item> )
Les touches doivent être UNIQ, nous ne devrions pas utiliser index comme clé, je pense que votre identifiant de chaque profil est similaire aux valeurs d'index comme 1,2,3. Donc, il s'agit de meilleures clés utilisateur comme ci-dessous
return (names.map = name => { <Item key={`NamesItem-${name.id}`}> <IdName>{name.id}</IdName> <FirstName>{name.firstName}</FirstName> <LastName>{name.lastName}</LastName> </Item>)
Est-ce que cela répond à votre question? Comprendre des clés uniques pour les enfants des enfants dans React.js
Vos identifiants sont uniques?
Je ne pense pas que tu voulais rendre sans clés. Ils sont utilisés pour aider à réagir mieux performer
Vous retournez une fonction !? Pas une liste.
@THOMAS Je ne sais pas à ce sujet, j'ai ajouté le code complet. Pensez-vous que c'est une fonction?
Je pense,
nom => {...} code> est une fonction, et
noms.map = nom => {...} code> attribue la fonction à
noms.map code>. Aucune exécution en vue. et
retour a = b code> est identique à
a = b; retour b; code> donc, retourne la fonction.
Malgré la question étant fermée en tant que "duplicate", le problème n'était pas dans la touche code> code> (il n'était qu'un avertissement, pas une erreur, après tout), mais dans la déclaration code> code> de
namecomonent code> (et btw vos composants de réact doivent être pascalcased i>, pas camelicased i>).