استفادهی گستردهی از jQuery به همراه برنامههای AngularJS 2.0 ایدهی خوبی نیست؛ زیرا jQuery و کدهای آن، ارتباط تنگاتنگی را بین DOM و JavaScript برقرار میکنند که برخلاف رویهی فریمورکهای MVC است. اما با این حال استفادهی از افزونههای بیشمار jQuery در برنامههای AngularJS 2.0، جهت غنا بخشیدن به ظاهر و همچنین کاربردپذیری برنامه، یکی از استفادههای پذیرفته شدهی آن است.
روش استفادهی از jQuery نیز در حالت کلی همانند مطلب « استف ...
هزاران کتابخانهی جاوا اسکریپتی مستقل از AngularJS 2.0 وجود دارند که نیاز است بتوانیم از آنها در برنامههای مختلفی استفاده کنیم. در این مطلب، دو روش بارگذاری آنها را بررسی خواهیم کرد.
هدف: استفاده از کتابخانهی jsSHA
میخواهیم در یک برنامهی AngularJS 2.0، از کتابخانهی jsSHA استفاده کرده و هش SHA512 یک رشته را محاسبه کنیم.
تامین پیشنیازهای اولیه
میتوان فایلهای این کتابخانه را مستقیم ...
SQL Server Express LocalDB یا به صورت خلاصه LocalDB، یک بانک اطلاعاتیاست که به صورت متصل به پروسهی برنامهی جاری اجرا میشود؛ برخلاف رویهی متداول بانکهای اطلاعاتی که به صورت یک سرویس مستقل اجرا میشوند. هدف آن، جایگزین کردن نگارش Express نیست و بیشتر حجم کم و سهولت توزیع آن مدنظر بودهاست. برای مثال نگارش Express به صورت یک سرویس مجزا و مستقل بر روی سیستم نصب میشود؛ اما LocalDB به همراه و متصل به برنامهی نوشته شده، اجرا میشود: ...
یکی از مشکلاتی را که حین کار با AngularJS 2.0 به کرات شاهدش خواهید بود، کش شدن تک اسکریپتهای ماژولهای آن است. برای مثال فایل ts ایی را تغییر میدهید؛ به فایل js معادل آن کامپایل میشود. چون برنامه ماژولار است و این ماژول پیشتر توسط مرورگر بارگذاری شدهاست، بار دیگر نسبت به دریافت مجدد آن اقدام نمیکند. همچنین با ارائهی نگارش RC، دیگر خبری از فایلهای bundle این مجموعه نیست و اینبار اگر تبادلات شبکهی بین سرور و برنامه را مرور کنید، به چ ...
در قسمت قبل ، فرمهای template driven را بررسی کردیم. همانطور که مشاهده کردید، این نوع فرمها، قابلیتهای اعتبارسنجی پیشرفتهای را به همراه ندارند. برای فرمهایی که نیاز به اعتبارسنجیهای سفارشی دارند، فرمهای model driven پیشنهاد میشوند که در این قسمت بررسی خواهند شد.
طراحی فرم ثبت نام کاربران در سایت با روش model driven
در این قسمت قصد داریم فرم ثبت نام کاربران را به همراه اعتبارسنجیهای پیشرفتهای پیاده سازی ک ...
هر برنامهی وبی، نیاز به کار با فرمهای وب را دارد و به همین جهت، AngularJS 2.0 به همراه دو نوع از فرمها است: فرمهای مبتنی بر قالبها و فرمهای مبتنی بر مدلها.
کار با فرمهای مبتنی بر قالبها سادهتر است؛ اما کنترل کمتری را بر روی مباحث اعتبارسنجی دادههای ورودی توسط کاربر، در اختیار ما قرار میدهند. اما فرمهای مبتنی بر مدلها هر چند به همراه اندکی کدنویسی بیشتر هستند، اما کنترل کاملی را جهت اعتبارسنجی ورودیهای کاربران، ارائه ...
یک برنامه، از صفحات و Viewهای مختلفی تشکیل میشود و Routing یا مسیریابی، امکان ناوبری بین این Viewها را میسر میکند. یک برنامهی AngularJS 2.0، یک برنامهی تک صفحهای وب است. به این معنا که تمام Viewهای برنامه، در یک صفحه نمایش داده میشوند؛ که معمولا همان index.html سایت است. هدف از سیستم مسیریابی، مدیریت نحوهی نمایش و قرارگیری این Viewها، درون تک صفحهی برنامه است.
برپایی تنظیمات اولیهی سیستم مسیریابی در AngularJS 2.0
...
اغلب برنامههای AngularJS 2.0، اطلاعات خود را از طریق پروتکل HTTP، از سرور دریافت میکنند. برنامه یک درخواست Get را صادر کرده و سپس سرور پاسخ مناسبی را ارائه میدهد.
مقدمهای بر RxJS
اگر به پیشنیازهای نصب AngularJS 2.0 در قسمت اول این سری دقت کرده باشید، یکی از موارد آن، RxJS است: "dependencies": {
"rxjs": "5.0.0-beta.2"
},
یک Observable، آرایهای است که اعضای آن به صورت غیر همزمان (async ...
یک سرویس در AngularJS 2.0، کلاسی است با هدفی محدود و مشخص. این سرویسها مستقل از کامپوننتی خاص هستند و هدف آنها، به اشتراک گذاشتن اطلاعات و یا منطقی بین کامپوننتهای مختلف میباشد. همچنین از آنها برای کپسوله سازی تعاملات خارجی، مانند دسترسی به دادهها نیز استفاده میشود.
نگاهی به نحوهی عملکرد سرویسها و تزریق وابستگیها در AngularJS 2.0
فرض کنید کلاس سرویسی، به نحو ذیل تعریف شدهاست: export class MySe ...
گاهی از اوقات جهت refactoring یک template بزرگ، بهتر است آنرا به چند template کوچک خرد کرد و سپس از جمع آنها به صورت یک template اصلی استفاده نمود. در این حالت نیاز است بین این زیر کامپوننتها و کامپوننتهای دربرگیرندهی آنها ارتباطات لازم را برقرار کرد.
تا اینجا در قسمت سوم ، نحوهی قراردادن یک کامپوننت را در کامپوننتی دیگر، توسط مقدار دهی خاصیت directives مزین کنندهی Component بررسی کردیم. همینقدر که یک کامپوننت دارای selec ...