loading...
طراحی وب- برنامه نویسی
برنامه نویس بازدید : 72 جمعه 04 مرداد 1398 نظرات (0)

در این مقاله قصد داریم نحوه ساخت یک ماژول برای سازمان دهی کردن کدهای برنامه در انگولار را به شما آموزش دهیم. ماژول ها یک روش عالی برای سازمان دهی کدهای یک برنامه و گسترش آن با قابلیت کتابخانه های خارجی را ارائه می دهند. کتابخانه های انگولاری که از ngModule استفاده می کنند عبارتند از: FormModule، HttpClientModule وRouterModule .

کتابخانه های خارجی زیادی وجود دارند که به عنوان ngModule عمل می کنند. بعضی از این کتابخانه ها عبارتند از:Material Design، Ionic، AngularFire2 .

ماژول های انگولار می توانند سرویس ها را به برنامه اضافه کنند.

این سرویس ها باعث می شوند که در تمام پروژه های خود بتوانید از آنها استفاده کرده و حجم کدنویسی خود را کاهش دهید.

سرفصل های این آموزش

  1. ویژگی ماژول ها
  2. تفاوت بین ماژول های ویژگی (Feature) و ماژول های ریشه (root).
  3. نحوه ساخت ماژول های انگولار
  4. نصب انگولار 7
  5. ساخت یک ماژول جدید در انگولار
  6. ساخت کامپوننت در انگولار
  7. ساخت یک مدل و سرویس
  8. پیکربندی مسیریابی
  9. نمایش داده
  10. نتیجه گیری
ماژول های ویژگی (feature) مانند ngModule برای سازمان دهی کدها استفاده می شوند. با افزایش مقیاس برنامه، توسط این قابلیت می توانید کدهای برنامه تان را بر اساس یک ویژگی خاص، سازمان دهی کنید.

ماژول های ویژگی به ما کمک می کنند تا یک محدوده شفاف برای ویژگی های برنامه، اعمال کنیم. با ماژول های ویژگی، می توانید کدهایی که به یک ویژگی خاص مربوط هستند را از بقیه کدهای برنامه جدا کنید.

تفاوت بین ماژول های ویژگی و ماژول های ریشه

ماژول های ویژگی بر خلاف API های هسته انگولار، یکی از بهترین راه ها برای سازمان دهی کردن برنامه به شمار می آیند.

ماژول های ویژگی یک مجموعه منسجم از قابلیت های متمرکز روی یک کاربرد خاص در برنامه، مانند چرخه کاری کاربر، مسیریابی و یا فرم ها را ارائه می دهند.

در حالی که شما می توانید هر کاری را در ماژول های ریشه انجام دهید، اما ماژول های ویژگی به شما کمک می کنند که کدهای برنامه را به بخش های مختلف تقسیم بندی کنید.

نحوه ساخت یک ماژول در انگولار

در این قسمت می خواهیم آخرین نسخه انگولار را نصب کرده و از ماژول های ویژگی به منظور سازمان دهی پروژه استفاده کنیم.

نصب انگولار 7

ترمینال را باز کرده و دستور زیر را برای نصب انگولار 7 در آن اجرا کنید.

نصب انگولار 7

در این قسمت، از مسیریابی انگولار استفاده خواهیم کرد، اما این قابلیت توسط Angular CLI ارائه نشده است، چون به آن نیازی نیست.

در این آموزش تنها از یک روت استفاده می کنیم.

به فولدر برنامه رفته و آن را در یک ویرایشگر متنی باز کنید. من از VSCode استفاده می کنم.

همچنین با دستور زیر بوت استرپ را به آن اضافه می کنیم.

سپس باید فایل بوت استرپ را به فایل angular.json اضافه کنیم.

حال می توانید از بوت استرپ در برنامه تان استفاده کنید.

ساخت یک ماژول جدید در انگولار

در این بخش فرض می کنیم شما یک برنامه با Angular CLI ایجاد کردید، برای ساخت یک ماژول ویژگی، دستور زیر را در ترمینال اجرا کنید.

دستور فوق یک فولدر به نام student در داخل دایرکتوری app ایجاد می کند و سپس یک فایل جدید به نام student.model.ts در داخل دایرکتوری student قرار می دهد.

اگر بخواهیم هر کامپوننت یا قابلیت مرتبط با student ایجاد کنیم، باید آن را به فایل student.model.ts وارد(import) کنیم و آن را مستقیماً داخل فایل app.module.ts قرار ندهیم.

قدم بعد ساخت سه کامپوننت مرتبط با ماژول student است.

ساخت کامپوننت در انگولار

حال باید سه کامپوننت زیر که به ماژول Student مرتبط هستند، را ایجاد کنیم.

  • student.component.ts
  • student-list.component.ts
  • student-list-item.component.ts

برای ساخت این کامپوننت ها دستورات زیر را در ترمینال اجرا کنید.

بعد از اجرای دستورات فوق، تمام کامپوننت ها در مسیر app/student ساخته می شوند و اکنون می توانید فایل student.model.ts را ببینید. همچنین این سه کامپوننت به طور خودکار به فایل student.model.ts، اضافه یا import می شوند.

سپس باید فایل student.module.ts را به فایل app.module.ts، اضافه یا import کنید.

تا به اینجا توانستیم یک ماژول جدید را در برنامه انگولارمان ثبت کنیم. حال سرور توسعه انگولار را راه اندازی میکنیم تا ببینیم آیا برنامه با خطا مواجه می شود یا خیر.

ساخت کامپوننت در انگولار 7

ساخت یک مدل و سرویس برای Student

ابتدا با دستور زیر یک سرویس ایجاد کنید.

فایل ساخته شده مطابق زیر است.

حال یک فایل به نام student.model.ts در داخل دایرکتوری Student ایجاد کرده و کدهای زیر را در آن قرار دهید.

در بالا کلاس مدل student را ایجاد کردیم. نوع داده هایی که در این مدل ایجاد کرده ایم را در بخش front end سایت نمایش می دهیم.

حال کدهای زیر را به فایل student.service.ts اضافه کنید.

در بالا یک متد به نام getStudents تعریف کردیم که یک observable را به خروجی بر می گرداند. به این ترتیب هنگامی که subscriber بخواهد داده ای را از publisher دریافت کند، studentObservable را گرفته و publisher شروع به انتشار مقادیر می کند و سر انجام subscriber داده ها را دریافت می کند.

حال قدم آخر برای آماده سازی کامپوننت ها به منظور نمایش داده هایی که از سرویس Student به آن ارسال می شوند را انجام می دهیم.

پیکربندی مسیریابی در انگولار 7

کدهای زیر را در فایل app.module.ts اضافه کنید.

در بالا من Route و RouterModule را به فایل import کردم و سپس یک آرایه ای از روت ها ایجاد کرده و آن را در پروژه ثبت کردم.

حال باید کامپوننت مان را با استفاده از router-outlet در داخل فایل app.component.html نمایش می دهیم.

حال اگر کاربر به آدرس http://localhost:4200 مراجعه کند، ما صفحه ی student.component.html را نمایش می دهیم.

در مرحله بعدی باید کدهای html را به این ویو اضافه کنیم.

نمایش داده ها در صفحه قالب انگولار 7

ابتدا کدهای زیر را در فایل student.component.html اضافه کنید.

این کامپوننت بیرونی ما است و اما در داخل آن، کامپوننت student-list.component.html را قرار دادیم.

حال کدهای زیر را در فایل student-list.component.ts اضافه می کنیم.

سپس فایل student-list.component.html را باز کرده و کدهای زیر را در آن قرار دهید.

در کدهای بالا، قصد داریم داده ها را از کامپوننت والد به کامپوننت فرزند ارسال میکنیم. برای این منظور کامپوننت app-student-list-component یک مقدار به نام student را به عنوان ورودی دریافت می کند.

حال کدهای زیر را در فایل student-list-item.component.ts اضافه می کنیم.

سپس کدهای html زیر را به فایل student-list-item.component.html اضافه کنید.

فایل را ذخیره کرده و به آدرس http://localhost:4200 بروید و بعد از حدود یک ثانیه باید صفحه ای مانند زیر را مشاهده کنید.

 ساخت ماژول برای سازمان دهی کردن کدها در انگولار

نتیجه گیری

در این آموزش یک پروژه ماژولار که اطلاعات مربوط به دانشجویان را نمایش می دهد، ایجاد کردیم.

تمام قابلیت ها و کدهای مربوط به دانشجویان در فولدر app/student قرار میگیرند و همچنین می توانید هر تعداد ماژول که بخواهید در این فولدر ایجاد کنید و سپس آنها را توسط فولدری که ماژول ها در آن قرار گرفته، از هم جدا کنید.

ماژول های ویژگی (Feature) یکی از بهترین راه ها برای سازمان دهی کدهای برنامه است. با این روش نیازی نیست که تمام کامپوننت های برنامه را در فایل app.module.ts ثبت کنید، بلکه یک فایل ماژول برای قابلیتی که می خواهید، ایجاد کرده و سپس کامپوننت های خود را به داخل آن اضافه می کنید.

در نهایت فایل ماژول را به درون فایل app.module.ts اضافه می کنیم.

 

منبع: روکسو

 

 
ارسال نظر برای این مطلب

کد امنیتی رفرش
اطلاعات کاربری
  • فراموشی رمز عبور؟
  • آرشیو
    آمار سایت
  • کل مطالب : 346
  • کل نظرات : 0
  • افراد آنلاین : 1
  • تعداد اعضا : 0
  • آی پی امروز : 12
  • آی پی دیروز : 17
  • بازدید امروز : 62
  • باردید دیروز : 21
  • گوگل امروز : 2
  • گوگل دیروز : 5
  • بازدید هفته : 136
  • بازدید ماه : 501
  • بازدید سال : 7,010
  • بازدید کلی : 35,245