نوفيل
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
دخولابدأ مجاناً
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
نوفيل

منصة تعليم البرمجة الأولى بالعربي. تعلم من الصفر حتى الاحتراف مع كورسات احترافية وتحديات ذكاء اصطناعي.

المنصة

  • الكورسات
  • التحديات
  • المقالات
  • الأدوات

الحساب

  • إنشاء حساب
  • تسجيل الدخول
  • لوحة التحكم
  • الملف الشخصي

روابط

  • سياسة الخصوصية
  • شروط الاستخدام
  • عن نوفيل
  • تواصل معنا

© 2026 نوفيل. جميع الحقوق محفوظة.

صُنع بـ في مصر

نوفيل
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
دخولابدأ مجاناً
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
AN

منهج Angular

دليل مرجعي شامل

كل اللغات
مدرسة البرمجة/منهج Angular /فهم مزخرف المكون

فهم مزخرف المكون

مزخرف المكون@ComponentComponent Decoratorلميتاداتا Metadataخصائص المكونAngular 22.1

جدول مرجعي سريع

1
الخاصية (Property)الوظيفة الأساسيةالاستخدام العملي
selectorيحدد اسم العلامة المخصصة (HTML Tag) التي ستُستخدم لاستدعاء المكون داخل القوالب الأخرىيُكتب عادة ببادئة مثل app- لمنع التعارض مع وسوم HTML القياسية (مثال: <app-navbar>)
standaloneيؤكد لإطار العمل أن المكون مستقل ذاتياً (تأخذ القيمة true)تمثل حجر الأساس في معمارية Angular 22.1 للاستغناء عن الـ NgModules
importsمصفوفة تسجل كل ما يعتمد عليه المكون من مكتبات أو مكونات أخرىاستيراد NgIf، NgFor، أو مكونات أخرى مثل ButtonComponent
template / templateUrlيربط الكلاس بقالب الـ HTML سواء كان كوداً مدمجاً أو ملفاً خارجياًتحديد الهيكل المرئي الذي سيعرض بيانات الكلاس للمستخدم
styles / styleUrl (أو styleUrls)يربط الكلاس بملفات التنسيق (CSS/SCSS) لضمان تطبيق الأنماط على هذا المكون فقطتخصيص ألوان وتصميم المكون بشكل معزول (Encapsulated)

الشرح

نصل الآن إلى الدرس الرابع في فصل المكونات المستقلة. في هذا الدرس، سنسلط الضوء على "العقل المدبر" لأي مكون في أنجولر: المزخرف @Component. في لغة TypeScript، الكلاس (Class) بمفرده لا يعني شيئاً لإطار العمل؛ والمزخرف هو الأداة التي تضيف "البيانات الوصفية" (Metadata) إلى هذا الكلاس لتخبر Angular 22.1 بكيفية التعامل معه، أين يجد ملفاته، وما هي تبعياته للعمل كجزء من واجهة المستخدم.

تفصيل عمل المزخرف @Component

إضافة البيانات الوصفية (Metadata):

بدون المزخرف، لا يختلف الكلاس الذي تكتبه عن أي كلاس جافاسكربت عادي. عندما تضع @Component({...}) فوق تعريف الكلاس مباشرة، فإنك تمرر كائن إعدادات (Configuration Object) يقوم بتغليف الكلاس بخصائص أنجولر السحرية.

التغييرات الحديثة في Angular 22.1:

في الإصدارات القديمة، كانت الخصائص مثل styleUrls تأخذ مصفوفة من المسارات. في الإصدارات الحديثة (بما فيها 22.1)، تم تبسيطها لتصبح styleUrl (مفردة) وتقبل نصاً (String) مباشراً إذا كان هناك ملف تنسيق واحد، مما يجعل الكود أكثر نظافة وقابلية للقراءة.

أمثلة برمجية: تخصيص المزخرف

المثال الأول: مزخرف متكامل لمكون مستقل

هذا المثال يوضح كيف تتضافر جميع الخصائص الأساسية لتكوين مكون جاهز للعمل يعتمد على مكونات خارجية لتكوين واجهته:

typescript
1import { Component } from '@angular/core';
2// استيراد المكونات التي سيعتمد عليها هذا المكون
3import { HeaderComponent } from '../header/header.component';
4import { FooterComponent } from '../footer/footer.component';
5
6// المزخرف يبدأ بالرمز @ ويوضع مباشرة فوق الكلاس
7@Component({
8 selector: 'app-main-layout', // اسم المكون عند الاستخدام في HTML
9 standalone: true, // التصريح بالاستقلالية
10 imports: [HeaderComponent, FooterComponent], // التبعيات
11 templateUrl: './main-layout.component.html', // مسار ملف الـ HTML
12 styleUrl: './main-layout.component.scss' // مسار ملف الـ SCSS
13})
14export class MainLayoutComponent {
15 // هنا يتم كتابة المنطق البرمجي، ولن يتعرف عليه أنجولر لولا المزخرف أعلاه
16 layoutTitle: string = 'اللوحة الرئيسية';
17}

نصائح احترافية

  • —احترم بادئة الـ Selector (Prefix)!
  • —عند توليد المكونات، يقوم Angular CLI افتراضياً بوضع البادئة app- قبل اسم المكون في الـ selector (مثل app-users). لا تقم بإزالة هذه البادئة. هذه الممارسة تحمي تطبيقك من أي تعارض مستقبلي إذا قررت متصفحات الويب إضافة وسوم HTML قياسية جديدة تحمل نفس اسم مكونك (مثل <menu> أو <dialog>). يمكنك تخصيص البادئة الافتراضية الخاصة بمشروعك بأكمله من خلال تعديل خاصية prefix داخل ملف angular.json

الدرس السابق

إنشاء وتكوين أول مكون مستقل خطوة بخطوة

الدرس التالي

كيفية استيراد المكونات والمكتبات داخل المكون المستقل

نوفيل

منصة تعليم البرمجة الأولى بالعربي. تعلم من الصفر حتى الاحتراف مع كورسات احترافية وتحديات ذكاء اصطناعي.

المنصة

  • الكورسات
  • التحديات
  • المقالات
  • الأدوات

الحساب

  • إنشاء حساب
  • تسجيل الدخول
  • لوحة التحكم
  • الملف الشخصي

روابط

  • سياسة الخصوصية
  • شروط الاستخدام
  • عن نوفيل
  • تواصل معنا

© 2026 نوفيل. جميع الحقوق محفوظة.

صُنع بـ في مصر