انتقل إلى محتوى الدرس

Component Attribute Bags and Merging إدارة ودمج السمات بكائن attributes

تصميم عناصر واجهة قابلة لإعادة الاستخدام عبر مكونات Blade الحديثة وتمرير الخصائص @props ودمج السمات والفتحات .
1 صفوف تعليمية
إطار العمل Laravel
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

تُجمع أي سمات HTML إضافية تُمرر للمكون ولم تُذكر داخل @props مثل المعرفات أو أصناف التنسيق الإضافية تلقائياً داخل الكائن $attributes. تتيح لك دالة $attributes->merge دمج الأصناف الافتراضية للمكون مع الأصناف الإضافية الممررة عند الاستدعاء بذكاء.

  • حقيبة السمات التلقائية ($attributes Bag): تحتفظ بكافة سمات HTML الإضافية مثل id وwire وسمات البيانات.
  • الدمج الذكي للأصناف (merge Method): يجمع أصناف المكون الأساسية مع الأصناف الممررة من الصفحة المستدعية.
  • الأصناف الشرطية للمكون ($attributes->class): يدمج الأصناف المشروطة بسلاسة مع حقيبة السمات.
PHP
@props(['type' => 'button'])
<button {{ $attributes->merge([
    'type' => $type,
    'class' => 'btn btn-primary',
]) }}>
    {{ $slot }}
</button>