الـ Modules عبارة عن حاويات "containers" هذه الحاويات تحتوي على تعريفات الملفات مختلفة فيمكن أن تحتوي على مكونات "components" و ملفات خدمة"services" وملفات أخرى يتم التصريح بها وتعريفها عند الـ Module.
تحتوي مشاريع الـangular على الأقل على Modules واحد ويسمى app.module.ts ويمكن انشاء موديلات حسب الحاجة اليها وحسب نوعية المشروع فيمكن مثلا انشاء موديل خاص بلوحة تحكم الـusers وموديل خاص بالصفحات وموديل خاص بالproducts واخر خاص بالـ news وهكذا ... ويمكن الاكتفاء بالموديل الرئيسي الدي يقدمه angular فقط
الملف app.module.ts. هذا الملف هو المكان الذي نقوم فيه بالتصريح داخله بالمكونات "components" والملفات المسؤولة عن الخدمات "services" و حتى الـ modules التي نقوم بانشائها .
محتوى الملف app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
@NgModule({
declarations: [
AppComponent,
],
imports: [
BrowserModule,
AppRoutingModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
الـ BrowserModule : هو module مدمج مع angular حيث يوفر هذا الموديول عدد من الخدمات المحددة لمنصة المتصفح لذلك فإن الـ app.module.ts "الموديل الأساسي" يقوم باستيرادها عن طريق تعليمة "import"
BrowserModule يتضمن تعليمات شائعة جدا سنتعرف عليها لاحقا مثل تعليمة الشرطية (if) والتي تعرف بـ NgIf وتعليمة الحلقات (foreach,for) والتي تعرف في angular بـ NgFor يمكن استخدامها في القوالب الخاصة بمشاريع angular .. عموما لست بحاجة للتعمق بهذه التفاصيل .خد فقط رؤوس أقلام عن هذه المكتبات.
يمكن أن يبدأ تطبيق Angular الخاص بك بطرق عديدة ومختلفة ولكن بما أننا تقوم بتشغيل المشروع على المتصفح "Navigator" فسوف نحتاج الى هذا الـ module لإقلاع التطبيق والذي يتواجد بالمكتبة المكتبة التي تم تعريفها في "platform-browser"
import { BrowserModule } from '@angular/platform-browser';
NgModule
NgModule عبارة عن سياق تجميعي نقوم فيه بتجميع مختلف الملفات التي نقوم بانشائها بمشاريعنا مثل "components" , "services" والـ "modules" , يوفر NgModule عددًا من الميزات المفيدة لكل من بيئة العمل الأساسية والمطورين في Angular.
مثال وهمي
@NgModule({
declarations: [ Component1,Component2,Component3 ],
imports: [ Module1,Module2 ],
providers: [Service1,Service2,Service3,Service4],
bootstrap: [AppComponent]
})
تعليقات
إرسال تعليق