React.js : faut-il utiliser forEach en JSX ?
Le JSX est une extension du langage JavaScript utilisée par le framework ReactJS. Elle permet de mêler du HTML, du JavaScript et la notation propre au framework. On peut ainsi utiliser du HTML directement dans la méthode "render()" des composants React. Le JSX permet d'utiliser l'instruction "forEach" mais on ne peut pas l'utiliser dans tous les cas.
L'instruction "forEach" permet de parcourir un tableau d'éléments afin d'effectuer un traitement dessus. Il s'utilise donc de la même manière que dans un autre langage. Avec le JSX, on définit la variable qui va contenir l'élément parcouru, puis on lie une fonction qui effectuera le traitement avec cette variable.
{this.props.monTableau.forEach(element => { console.log(element); })}
Si vous souhaitez utiliser la fonction "forEach" pour de l'affichage, ce n'est pas une bonne option. La méthode "forEach" ne retourne rien. Les éventuelles balises que vous allez insérer ne seront donc pas affichées. À la place, nous vous conseillons la méthode "map()". Elle prend en paramètres 2 variables. La première va être la variable qui va contenir l'élément parcouru et la deuxième correspondra à l'index de cet élément dans le tableau. Vous devrez utiliser l'instruction "return" pour que les balises soient affichées dans votre composant.
class monComposant extends Component { render(){{this.props.titre}
{this.props.monTableau.map((element, i) => { console.log(element); // Affichage return (element.libelle
) })} }
JavaScript
- Node.js : quelle est la différence entre require et import ?
- Comment corriger l'erreur Webpack "ERR_OSSL_EVP_UNSUPPORTED"
- Obtenir l'adresse IP client uniquement en JavaScript
- Comment corriger l'erreur Uncaught SyntaxError: Unexpected end of JSON input at JSON.parse ?
- Comment vérifier qu'un tableau (array) contient une chaîne (string) en TypeScript ?
- Comment faire un focus sur un élément d'un formulaire HTML en JavaScript ?
- Comment corriger l'erreur Error: EACCES: permission denied, access '/usr/local/lib/node_modules' ?
- Comment convertir une chaîne de caractères (string) JSON en un objet JavaScript ?
- Comment vérifier si la propriété d'un objet est indéfinie (undefined) en JavaScript ?
- Comment résoudre l'erreur Node.js Typescript : "[ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension ".ts" for /app/src/App.ts" ?
- Comment générer un timestamp (horodatage) en JavaScript ?
- Node.js : comment résoudre l'erreur internal/modules/cjs/loader.js:582 throw err ?
- Comment vérifier une adresse mail en JavaScript ?
- Quel content-type utiliser pour du JSON ?
- Comment exprimer le type date en TypeScript ?
- Comment utiliser un composant JSX et résoudre l'erreur "'Element[]' is not a valid JSX element" ?
- Comment faire un downgrade d'une version Node.js ?
- Comment corriger l'erreur "TypeError: Cannot read properties of undefined (reading 'map')" ?
- Comment corriger l'erreur Uncaught SyntaxError: Cannot use import statement outside a module ?
- Node.js : comment corriger l'erreur Browserslist: caniuse-lite is outdated. Please run next command npm update ?
- Chrome : comment corriger l'erreur The message port closed before a response was received ?
- Comment faire un sleep dans une fonction JavaScript ?