ورود ثبت نام

ورود به حساب کاربری

نام کاربری *
رمز ورود *

ایجاد حساب کاربری

گزینه های * دار الزامی می باشند.
نام *
نام کاربری *
رمز ورود *
تائیدیه رمز ورود *
نشانی پست الکترونیک *
تائیدیه پست الکترونیک *

فرمها در آنگولار

در حالت کلی فرمها پیچیده ترین قسمت از ظاهر یک سیستم بر مبنای وب هستند. در حالیکه اغلب درخواستهای ما در محیط وب از طریق حرکت دادن ماوس و کلیک روی لینکها انجام می شود ولی در حقیقت این فرمها هستند که نقش اصلی در دریافت اطلاعات از کاربر را بر عهده دارند.

در ظاهر کار با فرم ساده است. شما یک تگ ورودی ایجاد میکنید. کاربر اطلاعات را وارد کرده و سپس بر روی کلید ثبت کلیک می کند. پس کجای کار مشکل است ؟

با این وجود فرمها می توانند بسیار پیچیده باشند. باور ندارید؟ موارد زیر را ببینید:

  1. هنگامی که از ورودیهای فرم جهت ویرایش داده ها در صفحه فرم و همچنین در سمت سرور استفاده شود.
  2. برخی مواقع تغییرات اعمال شده می بایست در جائی از صفحه نمایش داده شوند.
  3. اطلاعات وارد شده توسط کاربر قبل از ارسال به سرور بررسی شده و اعتبار سنجی شوند.
  4. خطاهای به وجود آمده حین ورود اطلاعات به ساده ترین و قابل فهم ترین صورت ممکن نمایش داده شوند.

خوشبختانه آنگولار با استفاده از ابزارهائی که در اختیار دارد به راحتی تمامی موارد ذکر شده را حل می کند. ابزارهائی از قبیل :

  • FormControls ورودیهای فرم را دسته بندی کرده و امکاناتی جهت کنترل آن در اختیار برنامه نویس قرار می دهد.
  • Validators به ما کمک می کند تا اطلاعات ورودی را به هر شکلی که می خواهیم کنترل کنیم.
  • Observers ابزاری است که فرم را زیر نظر گرفته و توسط آن می توانیم پاسخ مناسب به هر گونه تغییر در فرم را اعمال نمائیم.

 


روشهای تعریف فرم در آنگولار:

در آنگولار به دو روش میتوان یه فرم را پیاده سازی نمود. این دو روش عبارتند از :

Template Driven Form: در این روش بیشتر منطق فرم در قالب (Template) فرم قرار دارد.

Model Driven Form: در این روش منطق کنترل کننده فرم به صورت اجزای کلاس کامپوننت (Component) پیاده سازی می شود که می توان با کمک observeable ها نسبت به رویدادهای فرم واکنش مناسب نشان داد. به معنای ساده تر کدهای اعتبارسنجی از قالب فرم حذف شده و وظیفه بررسی ورودیهای کاربر بر عهده Component خواهد بود.

 

در حقیقت هر دو روش Template Driven و Model Driven به یک صورت پیاده سازی می شوند. به این صورت که از یک FormGroup برای کل فرم استفاده می شود و سپس به هر کنترل مجزا یک FormControl  نسبت داده می شود.

می توان به طور همزمان از هر دو روش برای طراحی فرم استفاده کرد، ولی در حالت کلی بهتر است که هر روش به تنهائی استفاده شود.


از کدام روش استفاده کنم ؟

پیشنهاد می شود که برای طراحی فرم های ساده از روش Template Driven استفاده شود. البته در این حالت نیز تفاوت آنچنانی بین دو روش وجود ندارد. فرمهای واکنشی در حقیقت قدرتمندتر بوده و در عین حال آنچنان پیچیده نیز نیستند. به طور کلی میتوان گفت که در سیستمهای با ابعاد بزرگتر، توصیه میشود که جهت پیاده سازی اعمال پیچیده از قبیل ذخیره اتوماتیک اطلاعات از روش Model Driven استفاده شود. در واقع هر فرمی را می توان توسط هر کدام از دو روش پیاده سازی کرد ولی طراحی برخی فرمها توسط روش Model Driven ساده تر انجام می شود. البته این به این معنا نیست که نتوان در طراحی این فرمها از روش Template Driven استفاده نمود بلکه روش Model Driven توسط قابلیتهای قدرتمندی که دارد باعث طراحی ساده تر فرم خواهد شد.

 

نوشتن دیدگاه


تصویر امنیتی
تصویر امنیتی جدید