Maison interface Web js tutoriel Journée Comprendre JSX et les éléments de rendu - ReactJS

Journée Comprendre JSX et les éléments de rendu - ReactJS

Aug 30, 2024 pm 07:01 PM

Day Understanding JSX and Rendering Elements - ReactJS

Bienvenue au jour 3 du défi « 30 Days of ReactJS » ! Aujourd'hui, nous allons plonger dans l'un des concepts fondamentaux de React : JSX. À la fin de cet article, vous aurez une solide compréhension de JSX et de la manière dont React l'utilise pour afficher des éléments sur la page Web.

Qu'est-ce que JSX ?
JSX signifie JavaScript XML. Il s'agit d'une extension de syntaxe pour JavaScript qui vous permet d'écrire du code de type HTML dans vos fichiers JavaScript. JSX facilite la création et la visualisation des composants de l'interface utilisateur directement dans votre code, en mélangeant la logique et la structure de votre application.

Comment fonctionne JSX
Lorsque vous écrivez du JSX, vous écrivez un mélange de HTML et de JavaScript. React prend cela et le transforme en objets JavaScript standard qui représentent votre interface utilisateur.

Voici un exemple de base :

const element = <h1>Hello, world!</h1>;

Cette ligne de code crée un élément React qui représente un

tag avec le texte « Bonjour tout le monde ! ».

JSX n'est pas HTML
Même si JSX ressemble beaucoup à HTML, il est important de se rappeler que ce n’est pas exactement la même chose. JSX est un sucre syntaxique que React utilise pour créer des éléments.

Par exemple, en HTML, des attributs comme class sont utilisés pour appliquer des classes CSS :

<h1 class="header">Hello, world!</h1>

Mais en JSX, vous devez utiliser className au lieu de class, car class est un mot-clé réservé en JavaScript :

const element = <h1 className="header">Hello, world!</h1>;

Intégration d'expressions dans JSX
L'une des fonctionnalités puissantes de JSX est que vous pouvez y intégrer des expressions JavaScript directement. Cela vous permet de générer dynamiquement du contenu basé sur la logique de votre application.

Par exemple :

const name = 'Meraj';
const element = <h1>Hello, {name}!</h1>;

Ici, {name} est une expression JavaScript qui sera évaluée et remplacée par la valeur de la variable name, rendue par « Bonjour, Meraj ! » sur l'écran.

Rendu des éléments dans React
Dans React, le rendu des éléments est le processus d'affichage du contenu sur la page. Les éléments React sont les éléments constitutifs de l’interface utilisateur de votre application.

Pour restituer un élément, vous utilisez la méthode ReactDOM.render(). Cette méthode prend deux arguments :

  1. L'élément React que vous souhaitez afficher.
  2. L'élément DOM où vous souhaitez le restituer.

Voici comment rendre le message « Bonjour tout le monde ! » exemple :

import React from 'react';
import ReactDOM from 'react-dom/client';

const element = <h1>Hello, world!</h1>;
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(element);

Ce code indique à React de restituer l'élément à l'intérieur de l'élément HTML avec l'identifiant de root.

La puissance du DOM virtuel de React
React utilise un DOM virtuel pour gérer efficacement les modifications apportées à l'interface utilisateur. Lorsque vous mettez à jour un élément, React compare la nouvelle version avec la précédente et ne met à jour que les parties du DOM réel qui ont changé. Cette approche rend React rapide et efficace.

Exemple concret : une liste de courses
Pensez à une liste de courses sur un tableau blanc. Si vous devez modifier un élément, vous n’effacez pas la liste entière et ne la réécrivez pas. Vous mettez simplement à jour l’élément spécifique qui a changé. Le DOM virtuel de React fonctionne de la même manière, mettant à jour uniquement les parties qui doivent être modifiées.

Pourquoi utiliser JSX ?

  • Code lisible : JSX vous permet d'écrire vos composants d'une manière facile à lire et à comprendre. Vous pouvez voir la structure de votre interface utilisateur directement dans votre code.
  • Moins de code : Avec JSX, vous pouvez écrire moins de code que si vous utilisiez React.createElement() pour créer des éléments manuellement.
  • Intégration avec JavaScript : Puisque JSX est une extension syntaxique de JavaScript, vous pouvez intégrer la logique directement dans le code de votre interface utilisateur.

Configuration de JSX avec Vite
Puisque nous utilisons Vite pour le développement, la bonne nouvelle est que Vite est préconfiguré pour prendre en charge JSX dès le départ. Cela signifie que vous pouvez commencer à écrire du JSX immédiatement sans aucune configuration supplémentaire.

Si vous avez suivi les étapes du jour 2, votre projet Vite est déjà configuré. Vous pouvez commencer à créer des composants avec JSX et les voir rendus instantanément.

Conclusion
JSX est un outil puissant qui comble le fossé entre HTML et JavaScript, facilitant ainsi la création d'interfaces utilisateur dynamiques et interactives avec React. Comprendre comment fonctionne JSX et comment React l'utilise pour restituer des éléments établira une base solide pour votre parcours de développement React.

Demain, nous plongerons dans les composants et les accessoires, les éléments de base de toute application React.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Types conditionnels avancés en dactylographie Types conditionnels avancés en dactylographie Aug 04, 2025 am 06:32 AM

Les types de conditions avancées de TypeScript implémentent le jugement logique entre les types via TextendU? X: Y Syntaxe. Ses capacités de base se reflètent dans les types de conditions distribuées, l'inférence de type inférieure et la construction d'outils de type complexe. 1. Le type conditionnel est distribué dans les paramètres de type nu et peut automatiquement diviser le type de joint, tel que pour obtenir la chaîne [] | nombre []. 2. Utiliser la distribution pour construire des outils de filtrage et d'extraction: exclut exclut les types via TextendU? Never: T, extraire extrait les points communs via TextendU? T: jamais, et des filtres non nuls nuls / non définis. 3

Architecture Micro Frontend: un guide de mise en œuvre pratique Architecture Micro Frontend: un guide de mise en œuvre pratique Aug 02, 2025 am 08:01 AM

MicrofronttendSSolvescalingCallegengeSInLargeTeamsByAnabled indépendante développement et élaboration de choOsanIntegrationsStrategy: UseModuleFederationInwebpack5ForruntimeLoadingAndTrue Independence, Build-Time IntegrationForsIpleSetups, Oriframes / webcomponents webcomponents

Quelles sont les différences entre VAR, LET et const dans JavaScript? Quelles sont les différences entre VAR, LET et const dans JavaScript? Aug 02, 2025 pm 01:30 PM

varisfunction-scoped,canbereassigned,hoistedwithundefined,andattachedtotheglobalwindowobject;2.letandconstareblock-scoped,withletallowingreassignmentandconstnotallowingit,thoughconstobjectscanhavemutableproperties;3.letandconstarehoistedbutnotinitial

Générer des puzzles à double chocolat résolus: un guide des structures de données et des algorithmes Générer des puzzles à double chocolat résolus: un guide des structures de données et des algorithmes Aug 05, 2025 am 08:30 AM

Cet article explore en profondeur comment générer automatiquement des puzzles solvables pour le jeu de puzzle à double choco. Nous introduirons une structure de données efficace - un objet cellulaire basé sur une grille 2D qui contient des informations limites, des couleurs et de l'état. Sur cette base, nous développerons un algorithme récursif de reconnaissance de blocs (similaire à la recherche en profondeur-première) et comment l'intégrer dans le processus de génération de puzz itérative pour garantir que les énigmes générées respectent les règles du jeu et sont résolubles. L'article fournira un exemple de code et discutera des considérations clés et des stratégies d'optimisation dans le processus de génération.

Comment pouvez-vous supprimer une classe CSS d'un élément DOM à l'aide de JavaScript? Comment pouvez-vous supprimer une classe CSS d'un élément DOM à l'aide de JavaScript? Aug 05, 2025 pm 12:51 PM

La méthode la plus courante et recommandée pour supprimer les classes CSS des éléments DOM à l'aide de JavaScript est via la méthode Suppor () de la propriété ClassList. 1. Utilisez Element.ClassList.Remove ('ClassName') pour supprimer en toute sécurité une seule ou plusieurs classes, et aucune erreur ne sera signalée même si la classe n'existe pas; 2. La méthode alternative consiste à utiliser directement la propriété ClassName et à supprimer la classe par remplacement de chaîne, mais il est facile de causer des problèmes en raison d'une correspondance régulière ou d'un traitement d'espace incorrect, donc il n'est pas recommandé; 3. Vous pouvez d'abord juger si la classe existe, puis la supprimer via element.classList.Contains (), mais ce n'est généralement pas nécessaire; 4.Classlist

Quelle est la syntaxe de classe en JavaScript et comment est-elle liée aux prototypes? Quelle est la syntaxe de classe en JavaScript et comment est-elle liée aux prototypes? Aug 03, 2025 pm 04:11 PM

La syntaxe de classe de JavaScript est un sucre syntaxique hérité par les prototypes. 1. La classe définie par la classe est essentiellement une fonction et des méthodes sont ajoutées au prototype; 2. Les instances recherchent les méthodes à travers la chaîne prototype; 3. La méthode statique appartient à la classe elle-même; 4. s'étend dans la chaîne prototype et la couche sous-jacente utilise toujours le mécanisme du prototype. La classe n'a pas changé l'essence de l'héritage du prototype JavaScript.

Vercel Spa Routing et chargement des ressources: résoudre les problèmes d'accès aux URL profonds Vercel Spa Routing et chargement des ressources: résoudre les problèmes d'accès aux URL profonds Aug 13, 2025 am 10:18 AM

Cet article vise à résoudre le problème du rafraîchissement de l'URL profond ou de l'accès direct, provoquant une défaillance de chargement des ressources de la page lors du déploiement d'applications (spas) de page unique sur Vercel. Le noyau est de comprendre la différence entre le mécanisme de réécriture de routage de Vercel et les chemins relatifs d'analyse du navigateur. En configurant Vercel.json pour rediriger tous les chemins vers index.html et corriger la méthode de référence des ressources statiques dans HTML, modifiez le chemin relatif en chemin absolu, en vous assurant que l'application peut charger correctement toutes les ressources sous n'importe quelle URL.

Maître des méthodes de tableau JavaScript: «map», `filtre» et «réduction» Maître des méthodes de tableau JavaScript: «map», `filtre» et «réduction» Aug 03, 2025 am 05:54 AM

La carte des méthodes de tableau de JavaScript, le filtre et la réduction sont utilisées pour écrire du code clair et fonctionnel. 1. La carte est utilisée pour convertir chaque élément dans le tableau et renvoyer un nouveau tableau, tel que la conversion Celsius en Fahrenheit; 2. Le filtre est utilisé pour filtrer les éléments en fonction des conditions et renvoyer un nouveau tableau qui remplit les conditions, telles que l'obtention de nombres égaux ou d'utilisateurs actifs; 3. Réduction est utilisée pour accumuler des résultats, tels que la fréquence de addition ou de comptage, et la valeur initiale doit être fournie et renvoyée à l'accumulateur; Aucun des trois ne modifie le tableau d'origine et ne peut être appelé dans la chaîne, adapté au traitement et à la conversion des données, améliorant la lisibilité du code et la fonctionnalité.

See all articles