Rumah > hujung hadapan web > tutorial js > Ciri utama Seni Bina Berasaskan Komponen

Ciri utama Seni Bina Berasaskan Komponen

Mary-Kate Olsen
Lepaskan: 2024-10-21 18:30:02
asal
464 orang telah melayarinya

Key characteristic of Component-Based Architecture

Berikut ialah 5 ciri utama Seni Bina Berasaskan Komponen yang dilaksanakan dalam React JS. Contoh-contoh ini akan menunjukkan cara komponen React merangkumi ciri-ciri

  1. Kebolehgunaan semula
  2. Pengenkapsulan, Kebolehtukaran
  3. Skalabiliti
  4. Kebolehselenggaraan
  5. Komposisi

Kebolehgunaan semula
Komponen boleh digunakan semula merentasi bahagian aplikasi yang berlainan.
Contoh: Komponen Butang digunakan beberapa kali

function Button({ label, onClick }) {
  return <button onClick={onClick}>{label}</button>;
}

function App() {
  return (
    <div>
      <Button label="Submit" onClick={() => alert('Submit clicked')} />
      <Button label="Cancel" onClick={() => alert('Cancel clicked')} />
    </div>
  );
}
Salin selepas log masuk

Ekapsulasi
Komponen merangkum logik dan gayanya, menghalang gangguan luar.
Contoh: Komponen Profil Pengguna yang merangkum data pengguna

function UserProfile({ name, email }) {
  return (
    <div>
      <h3>{name}</h3>
      <p>Email: {email}</p>
    </div>
  );
}

function App() {
  return (
    <UserProfile name="John Doe" email="john@example.com" />
  );
}
Salin selepas log masuk

Kebolehtukaran
Komponen boleh ditukar atau diganti tanpa menjejaskan kefungsian keseluruhan apl.
Contoh: Menukar Butang Utama dengan Butang Sekunder

function PrimaryButton({ label, onClick }) {
  return <button style={{ backgroundColor: 'blue', color: 'white' }} onClick={onClick}>{label}</button>;
}

function SecondaryButton({ label, onClick }) {
  return <button style={{ backgroundColor: 'gray', color: 'white' }} onClick={onClick}>{label}</button>;
}

function App({ usePrimary }) {
  return (
    <div>
      {usePrimary ? <PrimaryButton label="Click Me" onClick={() => alert('Primary clicked')} /> : 
                   <SecondaryButton label="Click Me" onClick={() => alert('Secondary clicked')} />}
    </div>
  );
}
Salin selepas log masuk

Skalabiliti
Komponen memudahkan skala dengan menambahkan lebih banyak ciri tanpa menjejaskan komponen sedia ada.
Contoh: Menambah lebih banyak komponen Produk untuk menskalakan apl

function Product({ name, price }) {
  return (
    <div>
      <h3>{name}</h3>
      <p>Price: ${price}</p>
    </div>
  );
}

function ProductList() {
  const products = [
    { name: 'iPhone 13', price: 999 },
    { name: 'Samsung Galaxy S21', price: 799 },
    { name: 'Google Pixel 6', price: 599 },
  ];

  return (
    <div>
      {products.map((product, index) => (
        <Product key={index} name={product.name} price={product.price} />
      ))}
    </div>
  );
}

function App() {
  return <ProductList />;
}
Salin selepas log masuk

Kebolehselenggaraan
Komponen diasingkan, jadi ia boleh diselenggara dengan mudah dan dikemas kini secara bebas.
Contoh: Mengemas kini komponen Produk tanpa menjejaskan seluruh apl

function Product({ name, price }) {
  // Add a new feature to show if the product is on sale
  const isOnSale = price < 700;
  return (
    <div>
      <h3>{name}</h3>
      <p>Price: ${price} {isOnSale && <span>(On Sale!)</span>}</p>
    </div>
  );
}

function App() {
  return (
    <div>
      <Product name="Google Pixel 6" price={599} />
    </div>
  );
}
Salin selepas log masuk

Komposisi
Komponen boleh digabungkan atau digubah untuk membina UI yang lebih kompleks.
Contoh: Mengarang Pengepala, Produk dan Pengaki ke dalam satu Halaman

function Header() {
  return <h1>Welcome to My Shop</h1>;
}

function Product({ name, price }) {
  return (
    <div>
      <h3>{name}</h3>
      <p>Price: ${price}</p>
    </div>
  );
}

function Footer() {
  return <footer>Contact us at shop@example.com</footer>;
}

function Page() {
  return (
    <div>
      <Header />
      <Product name="Apple Watch" price={399} />
      <Footer />
    </div>
  );
}

function App() {
  return <Page />;
}
Salin selepas log masuk

Atas ialah kandungan terperinci Ciri utama Seni Bina Berasaskan Komponen. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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 terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan