"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment React JSX se transforme en JavaScript dans les coulisses

Comment React JSX se transforme en JavaScript dans les coulisses

Publié le 2024-11-06
Parcourir:336

How React JSX Gets Transformed Into JavaScript Behind the Scenes

Lorsque vous écrivez React, vous verrez souvent JSX – une syntaxe qui ressemble à HTML dans votre code JavaScript. Mais vous êtes-vous déjà demandé comment ce code s'exécute dans le navigateur ?

Voici la magie : JSX n'est pas du JavaScript valide ! Les navigateurs ne peuvent pas le comprendre directement. En coulisses, un outil comme Babel intervient pour convertir (ou « transpiler ») JSX en JavaScript standard.

Le processus :

1.Vous écrivez JSX – Cela ressemble à du HTML mais vit dans vos composants React. Par exemple:

const element = 

Hello, World!

;

2.Babel le transforme – Pendant le processus de construction, Babel convertit le JSX en JavaScript pur à l'aide de React.createElement :

const element = React.createElement('h1', null, 'Hello, World!');

3.JavaScript dans le navigateur – Enfin, ce JavaScript standard est ce que le navigateur exécute, construisant le DOM de manière dynamique.

Comment fonctionne Babel ?

Babel est un puissant compilateur JavaScript qui vous permet d'utiliser les dernières fonctionnalités JavaScript (y compris JSX dans React) tout en garantissant la compatibilité entre différents navigateurs et environnements. Voici un aperçu du fonctionnement de Babel :
1.Analyse
Babel commence par analyser votre code JavaScript ou JSX moderne dans un Arbre de syntaxe abstraite (AST). L'AST est une structure arborescente détaillée qui représente le code d'une manière simple pour Babel (et d'autres outils). analyser et manipuler. Au cours de cette étape, Babel lit le code mais ne le modifie pas encore.
Par exemple, Babel prend ce code JSX :

const element = 

Hello, World!

;

Et génère un AST, qui représente la structure de ce code.
2.Transformation
Ensuite, Babel applique une série de plugins au AST. Chaque plugin est chargé de transformer des parties spécifiques de l'AST selon les règles qu'il définit. Ces transformations peuvent inclure la conversion de la syntaxe JavaScript moderne (comme les fonctions fléchées ou async/await) vers des versions plus anciennes compatibles avec les navigateurs.
Pour JSX, Babel transforme :

const element = 

Hello, World!

;
const element = React.createElement('h1', null, 'Hello, World!');

3. Génération de code
Une fois toutes les transformations effectuées, Babel génère du code JavaScript à partir du AST transformé. Il s'agit de la dernière étape au cours de laquelle la sortie lisible par l'homme est produite, que le navigateur ou Node.js peut exécuter.

Concluons...

Pourquoi c'est important :

JSX vous permet d'écrire du code d'interface utilisateur plus intuitif, basé sur des composants, mais c'est Babel et le runtime JavaScript qui lui donnent vie. Comprendre cette conversion vous aide à mieux dépanner et à écrire des applications React plus optimisées.

Déclaration de sortie Cet article est reproduit sur : https://dev.to/kashif_ullah_dev/how-react-jsx-gets-transformed-into-javascript-behind-the-scenes-467f?1 En cas de violation, veuillez contacter study_golang@163 .com pour le supprimer
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3