React ⚛️ est une puissante bibliothèque JavaScript permettant de créer des interfaces utilisateur. Développé par Facebook en 2013, il a révolutionné le développement de l'interface utilisateur avec son architecture basée sur les composants et son approche déclarative. Que vous créiez une application Web simple ou un système complexe, React rend la création d'interfaces utilisateur dynamiques et réutilisables efficace et agréable.
Cet article plonge dans les fondamentaux de React et son concept de base : les Composants, avec de nombreux exemples de code pour illustrer ces idées.
À la base, React est une bibliothèque JavaScript conçue pour créer des interfaces utilisateur dynamiques et interactives. Il se concentre sur la couche de vue d'une application, suivant l'architecture Model-View-Controller (MVC). React facilite la création d'interfaces qui se mettent à jour efficacement à mesure que les données de votre application changent.
Les applications React sont construites à l'aide de composants, qui sont les éléments constitutifs d'une application React. Un composant est un élément indépendant de l'interface utilisateur qui encapsule sa logique, sa structure et son style.
Les composants fonctionnels sont de simples fonctions JavaScript qui acceptent les props comme entrée et renvoient des éléments React. Il s'agit du type de composant le plus courant dans les applications React modernes.
function Welcome(props) { return <h1>Hello, {props.name}!</h1>; } // Usage <Welcome name="Alice" />;
Les composants de classe sont des classes ES6 qui étendent la classe React.Component. Ils étaient couramment utilisés avant l'introduction des crochets.
function Welcome(props) { return <h1>Hello, {props.name}!</h1>; } // Usage <Welcome name="Alice" />;
import React, { Component } from 'react'; class Welcome extends Component { render() { return <h1>Hello, {this.props.name}!</h1>; } } // Usage <Welcome name="Alice" />;
Feature | Props | State |
---|---|---|
Definition | Data passed to a component from its parent. | Data managed within the component. |
Mutability | Immutable (cannot be changed by the receiving component). | Mutable (can be updated within the component). |
Usage | Used for passing data to child components. | Used for dynamic data that changes over time. |
State est un objet spécial dans React utilisé pour stocker les données qu'un composant doit restituer. Les composants fonctionnels utilisent le hook useState pour la gestion de l'état.
function Welcome(props) { return <h1>Hello, {props.name}!</h1>; } // Usage <Welcome name="Alice" />;
Les accessoires sont des arguments transmis d'un composant parent à un composant enfant, permettant aux données de circuler dans la hiérarchie des composants.
import React, { Component } from 'react'; class Welcome extends Component { render() { return <h1>Hello, {this.props.name}!</h1>; } } // Usage <Welcome name="Alice" />;
React encourage les composants imbriqués à créer des interfaces utilisateur complexes à partir de blocs de construction plus petits et réutilisables.
import React, { useState } from 'react'; function Counter() { const [count, setCount] = useState(0); return ( <div> <p>Count: {count}</p> <button onClick={() => setCount(count + 1)}>Increment</button> </div> ); }
Les composants de classe incluent des méthodes de cycle de vie pour effectuer des actions pendant les phases de montage, de mise à jour et de démontage. Pour les composants fonctionnels, les hooks React comme useEffect remplacent ces méthodes de cycle de vie.
import React, { useState } from 'react'; function Counter() { const [count, setCount] = useState(0); return ( <div> <p>Count: {count}</p> <button onClick={() => setCount(count + 1)}>Increment</button> </div> ); } // Usage;
function Greeting({ name }) { return <h1>Welcome, {name}!</h1>; } function App() { return <Greeting name="John" />; } // Renders: Welcome, John!
React simplifie la gestion des événements. Les gestionnaires d'événements sont transmis en tant qu'accessoires aux éléments et exécutés lorsque l'événement se produit.
function Header() { return <header><h1>My Website</h1></header>; } function Main() { return <main><p>This is the main content.</p></main>; } function Footer() { return <footer><p>© 2024 My Website</p></footer>; } function App() { return ( <div> <Header /> <Main /> <Footer /> </div> ); } // Usage <App />;
import React, { Component } from 'react'; class Timer extends Component { componentDidMount() { console.log('Timer mounted'); } componentWillUnmount() { console.log('Timer unmounted'); } render() { return <p>Timer running...</p>; } } // Usage <Timer />;
React vous permet de restituer des composants ou des éléments de manière conditionnelle en fonction de la logique de l'application.
import React, { useEffect } from 'react'; function Timer() { useEffect(() => { console.log('Timer mounted'); return () => console.log('Timer unmounted'); }, []); return <p>Timer running...</p>; } // Usage <Timer />;
Lors du rendu des listes dans React, il est important d'attribuer une clé unique à chaque élément pour aider React à identifier les changements.
function Button() { function handleClick() { alert('Button clicked!'); } return <button onClick={handleClick}>Click Me</button>; } // Usage <Button />;
React encourage la création de composants pouvant être réutilisés dans l'ensemble de l'application afin de réduire la redondance.
import React, { useState } from 'react'; function InputExample() { const [text, setText] = useState(''); function handleChange(event) { setText(event.target.value); } return ( <div> <input type="text" value={text} onChange={handleChange} /> <p>You typed: {text}</p> </div> ); } // Usage <InputExample />;
React est un outil puissant pour créer des applications Web modernes. Son architecture basée sur des composants, associée à des fonctionnalités telles que les accessoires, l'état et les hooks, permet de créer des interfaces utilisateur dynamiques, efficaces et réutilisables. En maîtrisant les concepts fondamentaux de React et en utilisant efficacement ses outils, les développeurs peuvent offrir des expériences utilisateur exceptionnelles tout en maintenant des bases de code propres et maintenables. Prêt à commencer ? Créez votre première application React et découvrez la magie des composants en action ! ?
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!