JSX : syntaxes courantes
Conditions
On ne peut pas inclure facilement une instruction if
en contexte JSX, il faut obligatoirement une
expression Javascript.
- if ... then ... else : utiliser l'opérateur ternaire
?:
:
- if ... then : on peut généralement utiliser les propriétés de court-circuit du ET logique :
- On peut utiliser le OU logique pour remplacer une valeur fausse :
(peut être lu comme : "afficher le nom, ou sinon la chaîne '(pas de nom)'
")
Boucles
De même que pour le if
, on ne peut pas intégrer une instruction for
ou while
,
il faut passer par une expression. On utilise généralement pour cela la fonction
map.
Note : les éléments générés doivent être munis d'un attribut key
unique (c'est une contrainte de React).
Exemple : afficher une liste d'objets seulement si elle est non vide :
Génération d'un index
Si on a besoin de numéroter les éléments de la liste, par exemple parce que "item" ne fournit pas
de clé unique, appeler map
avec un second argument :
Commentaires
Un commentaire JSX est la combinaison d'un bloc {}
et d'un commentaire Javascript /* ... */
:
Espaces blancs
On les utilise typiquement en fin de ligne. Contrairement au HTML, un saut de ligne en JSX ne génère pas un espace blanc.
En React classique
Le plus simple est d'utiliser {'
'}
:
En React Native
Dans les situations où on ne peut pas include du texte directement utiliser :