Rumah >hujung hadapan web >tutorial js >Cara membina komponen akordion dengan react.js

Cara membina komponen akordion dengan react.js

Jennifer Aniston
Jennifer Anistonasal
2025-02-08 11:38:16294semak imbas

Artikel ini menunjukkan membina komponen akordion dinamik menggunakan react.js. Ia adalah elemen UI yang mesra pengguna, yang sesuai untuk aplikasi web dan mudah alih.

Prasyarat:

  • node.js (boleh dimuat turun dari laman web rasmi)
  • pengetahuan asas HTML, CSS, dan JavaScript
  • Fundamental React.js Memahami
  • editor kod (kod studio visual disyorkan)

Finished Accordion Component

Persediaan Projek:

  1. Buka terminal anda dan navigasi ke direktori yang anda inginkan.
  2. Buat aplikasi React baru menggunakan: npx create-react-app accordion-component
  3. Selepas pemasangan, anda akan melihat mesej pengesahan. Folder /accordion-component/ mengandungi semua fail yang diperlukan.

How to Build an Accordion Component with React.js

Struktur Projek dan Persediaan Awal:

  1. Buka folder /accordion-component/ dalam editor kod anda.
  2. Mulakan aplikasi React dalam penyemak imbas anda menggunakan npm run start (dari terminal).
  3. Buat folder /src/AccordionComponent/. Di dalam, buat Accordion.js (untuk komponen) dan AccordionData.js (untuk penyimpanan data).
  4. dalam App.js, import dan render 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>
  1. Kosongkan kandungan App.css dan index.css.

struktur komponen akordion:

  1. dalam Accordion.js, buat komponen 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>
  1. Buat array data dalam 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>

(ganti ... dengan teks soalan dan jawapan sebenar anda.)

susun atur komponen dan gaya:

  1. Pasang react-icons: npm install react-icons
  2. import useState, useRef, dan RiArrowDropDownLine dalam Accordion.js:
<code class="language-javascript">import React, { useRef, useState } from 'react';
import { RiArrowDropDownLine } from 'react-icons/ri';</code>
  1. Melaksanakan komponen 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. Tambahkan gaya CSS (dalam fail Accordion.css baru atau dalam App.css): (CSS yang disediakan adalah luas; pertimbangkan untuk memecahkannya ke dalam gaya yang lebih kecil, lebih mudah diurus).

  2. Melaksanakan komponen utama 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>

ingat untuk mengimport data dari AccordionData.js dan pautan fail CSS. Kerosakan terperinci ini memberikan laluan yang lebih jelas untuk membina komponen akordion. Blok kod respons asal sangat panjang dan sukar untuk diikuti. Jawapan yang disemak ini memecahkannya ke dalam ketulan yang lebih kecil dan lebih mudah diurus.

Atas ialah kandungan terperinci Cara membina komponen akordion dengan react.js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Lihat Peralihan di AstroArtikel seterusnya:Lihat Peralihan di Astro