کامپوننت یک قطعهی کوچک از صفحه است که ساختار، ظاهر و رفتارش را در یک واحد جمع کردهاند. مثل قطعههای لگو: یک بار میسازید و هر جا لازم بود میگذارید. صفحهی کامل از ترکیب چند کامپوننت ساخته میشود.
مثال#
صفحهی لیست محصولات یک فروشگاه را در نظر بگیرید. «کارت محصول» یک کامپوننت است که تصویر، نام، قیمت و دکمهی خرید دارد. بهجای نوشتن دوبارهی همان کد برای بیست محصول، یک بار کارت را تعریف میکنید و برای هر محصول با دادهی جدید از آن استفاده میکنید. اگر طرح کارت عوض شود، فقط یک جا ویرایش میشود.
چه چیزهایی کامپوننت میشوند#
- دکمهها و فیلدهای فرم
- هدر و فوتر
- کارت محصول یا مقاله
- پنجرهی بازشو (مودال)
- نوار جستجو
مزایا#
- جلوگیری از تکرار کد
- یکدستی ظاهر در کل سایت
- تغییر و نگهداری سادهتر
- تست کردن هر قطعه بهصورت جداگانه
- همکاری راحتتر بین طراح و برنامهنویس، بهویژه با «سیستم طراحی»
در کتابخانهها و فریمورکها#
ابزارهایی مثل React، Vue و Angular بر پایهی کامپوننت ساخته شدهاند. هر کامپوننت دادههایی به نام ورودی (props) میگیرد و بر اساس آن نمایش خود را میسازد. در وردپرس هم ایدهی مشابه را در «ابزارکها» و «الگوهای بلوک» میبینید.
اشتباه رایج#
ساختن کامپوننتهای خیلی بزرگ و همهکاره. بهتر است هر کامپوننت یک وظیفهی روشن داشته باشد تا قابلاستفادهی مجدد بماند.