NgModule এনোটেশন - এঙ্গুলার এপ্লিকেশন

angular

NgModule এনোটেশন এর ভিতর কি কি থাকে?

  • imports
  • declarations
  • providers
  • exports এবং 
  • bootstrap



Import:

একটা মডিউলের মধ্যে অন্য একটা মডিউলের কোন কম্পোনেন্ট ব্যবহার করতে চাইলে, প্রথমে সেই মডিউলটা ইম্পোর্ট করতে হবে এখানে। 




declarations:

আমার নিজের মডিউলে যদি কোন কম্পোনেন্ট, ডিরেক্টিভ বা পাইপ তৈরী করে থাকি, তাহলে এখানে বলে দিতে হবে। অন্যথায় এগুলা কাজ করবে না।




providers:

এনগুলারে প্রোভাইডার হচ্ছে ডিপেন্ডেন্সি ইনজেক্টশন। কথার কথা, আপনার কাছে যদি একটা সার্ভিস থাকে এবং সার্ভিস ব্যবহার করার আগে প্রোভাইডারে বলে দিয়েআসতে হবে।




exports:

আপনার মডিউলের কোন কম্পোনেন্ট, ডিরেক্টিভ বা পাইপ যদি অন্য মডিউলে ব্যবহার করতে চান, তাহলে তাকে এক্সপোর্ট করতে হবে।



bootstrap:

যে কম্পোনেন্টগুলা প্রথমেই লোড করাতে হবে, তাদেরকে এখানে বলে দিতে হয়।



আমার প্রজেক্টের লেআউট মডিউল, যদিও এখানে বুটস্ট্রাপ নেই। 


@NgModule({

 imports: [

  CommonModule,

  RouterModule,

 ],

 declarations: [

  FooterComponent,

  NavbarComponent,

  SidebarComponent,

  AdminLayoutComponent,

  PublicLayoutComponent,

  PrivateLayoutComponent,

  AuthLayoutComponent,

 ],

 exports: [

  AdminLayoutComponent,

  PublicLayoutComponent,

  AuthLayoutComponent,

  FooterComponent,

  NavbarComponent,

  SidebarComponent,

 ],

 providers: [

  AuthService,

  PageService

 ]

})

export class LayoutModule { }



ইম্পর্টে দুইটা মডিউল ইম্পোর্ট করা হয়েছে


 imports: [

  CommonModule,

  RouterModule,

 ]





ডিক্লারেশনে কম্পোনেন্ট গুলা বলা হচ্ছে, এখানে ডিরেক্টিভ ও পাইপ নেই 


declarations: [

  FooterComponent,

  NavbarComponent,

  SidebarComponent,

  AdminLayoutComponent,

  PublicLayoutComponent,

  PrivateLayoutComponent,

  AuthLayoutComponent,

 ],



এখান থেকে আমি কিছু কম্পোনেন্ট এক্সপোর্ট করেছি, যেন অন্য মডিউলে ইম্পোর্ট করলে তাদেরকে ব্যবহার করতে পারি। 


exports: [

  AdminLayoutComponent,

  PublicLayoutComponent,

  AuthLayoutComponent,

  FooterComponent,

  NavbarComponent,

  SidebarComponent,

 ],



সর্বশেষ দুটা সার্ভিসকে ইনজেক্ট করা হয়েছে।


 providers: [

  AuthService,

  PageService

 ]


ধন্যবাদ।