Maison >interface Web >js tutoriel >Comment construire un composant accordéon avec react.js

Comment construire un composant accordéon avec react.js

Jennifer Aniston
Jennifer Anistonoriginal
2025-02-08 11:38:16406parcourir

Cet article montre la construction d'un composant d'accordéon dynamique à l'aide de react.js. Il s'agit d'un élément d'interface utilisateur convivial et économique idéal pour les applications Web et mobiles.

Prérequis:

  • node.js (téléchargeable sur le site officiel)
  • Connaissances de base HTML, CSS et JavaScript
  • REATTAMENTS FONDAMENTAL.
  • un éditeur de code (Code Visual Studio recommandé)

Finished Accordion Component

Configuration du projet:

    Ouvrez votre terminal et accédez au répertoire souhaité.
  1. Créez une nouvelle application React en utilisant:
  2. npx create-react-app accordion-component
  3. Après l'installation, vous verrez un message de confirmation. Le dossier
  4. contient tous les fichiers nécessaires. /accordion-component/

How to Build an Accordion Component with React.js

Structure du projet et configuration initiale:

    Ouvrez le dossier
  1. dans votre éditeur de code. /accordion-component/
  2. Démarrez l'application React dans votre navigateur en utilisant
  3. (à partir du terminal). npm run start
  4. Créer un dossier
  5. . À l'intérieur, créez /src/AccordionComponent/ (pour le composant) et Accordion.js (pour le stockage de données). AccordionData.js
  6. dans
  7. , Importer et rendre App.js: Accordion.js
<code class="language-javascript">import './App.css';
import Accordion from './AccordionComponent/Accordion';

function App() {
  return (
    <div classname="App">
      <accordion></accordion>
    </div>
  );
}

export default App;</code>
    Effacer le contenu de
  1. et App.css. index.css

Structure des composants de l'accordéon:

    dans
  1. , créez le composant Accordion.js: AccordionItem
<code class="language-javascript">import React from 'react';

const AccordionItem = () => {
  return (<h1>Accordion</h1>);
};

const Accordion = () => {
  return (
    <div>
      <accordionitem></accordionitem>
    </div>
  );
};

export default Accordion;</code>
    Créez le tableau de données dans
  1. : AccordionData.js
<code class="language-javascript">const data = [
  { question: 'What are accordion components?', answer: '...' },
  { question: 'What are they used for?', answer: '...' },
  // ... more questions and answers
];

export default data;</code>
(Remplacer

par votre texte de question et de réponse réel.) ...

Disposition et style des composants:

    installer
  1. : react-icons npm install react-icons
  2. import
  3. , useState et useRef dans RiArrowDropDownLine: Accordion.js
<code class="language-javascript">import React, { useRef, useState } from 'react';
import { RiArrowDropDownLine } from 'react-icons/ri';</code>
    Implémentez le composant
  1. : AccordionItem
<code class="language-javascript">const AccordionItem = ({ question, answer, isOpen, onClick }) => {
  const contentHeight = useRef();
  return (
    <div classname="wrapper">
      <div classname="{`question-container" : onclick="{onClick}">
        <p classname="question-content">{question}</p>
        <riarrowdropdownline classname="{`arrow" :></riarrowdropdownline>
      </div>
      <div classname="answer-container" ref="{contentHeight}" style="{{" height: isopen contentheight.current.scrollheight :>
        <p classname="answer-content">{answer}</p>
      </div>
    </div>
  );
};</code>
  1. Ajouter un style CSS (dans un nouveau fichier

    ou à l'intérieur Accordion.css): (le CSS fourni est vaste; envisagez de le diviser en feuilles de style plus petites et plus gérables). App.css

  2. Implémentez le composant principal

    : Accordion

<code class="language-javascript">import './App.css';
import Accordion from './AccordionComponent/Accordion';

function App() {
  return (
    <div classname="App">
      <accordion></accordion>
    </div>
  );
}

export default App;</code>

N'oubliez pas d'importer data depuis AccordionData.js et de lier le fichier CSS. Cette ventilation détaillée fournit un chemin plus clair pour construire la composante de l'accordéon. Les blocs de code de la réponse d'origine étaient très longs et difficiles à suivre. Cette réponse révisée le divise en morceaux plus petits et plus gérables.

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:
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