اعتبارسنجی درخواست های http$ با استفاده از یک Interceptor
پیش نیاز : هدایت خودکار کاربر به صفحه لاگین در حین اعمال Ajax ایی Angular Interceptors ابتدا مشکل و هدف را بیان می‌کنیم: مشکل : کاربر در صفحه‌ای حضور دارد که نیاز به اعتبارسنجی داشته و مدت اعتبار کاربر نیز تمام شده است، ولی هنوز در صفحه‌ای که نباید حضور داشته باشد، حضور دارد و بدتر از آن این است که می‌تواند درخواست‌های بی نتیجه‌ای را نیز ارسال کند. ...
کنترلرهای تو در تو در angularJs و نحوه ارث بری متدها و property ها در آن - بخش دوم
در بخش قبلی به چگونگی ساخت کنترلرهای تو در تو در AngularJs پرداختیم. همچنین بررسی نمودیم که propertyهای تعریف شده در کنترلر ما چگونه قابل استفاده توسط کنترلر فرزند میباشند. حال روشی دیگر را برای ارث بری تابع‌ها و propertyها، در کنترلر‌های تو در تو معرفی می‌نماییم. لازم به ذکر است که سورس پروژه را می‌توانید از لینک زیر دریافت نمایید: AngularJsNestedController.zip کد جاوااسکریپت زیر سه کنترلر تو در تو را پیاده سازی می‌کند: ...
کنترلرهای تو در تو در angularJs و نحوه ارث بری متدها و property ها در آن - بخش اول
در این مقاله قصد داریم تا به بررسی و پیاده سازی کنترلر‌های تو در تو در AngularJs بپردازیم. به این صورت که میتوانیم در یک صفحه یک کنترلر اصلی را در نظر بگیریم و کنترلر‌های دیگر را در این کنترلر قرار دهیم. نحوه‌ی ارث بری متغیرها، انقیاد داده‌ها و مقادیر تعریف شده در $scope، از جمله مواردی است که به آن خواهیم پرداخت. تمامی مواردی که ذکر خواهد شد در قالب یک پروژه قرار داده شده است. AngularJsNestedController.zip حال به بررسی جزئی کنترلر ...
Performance در AngularJS قدم پنجم
در این مقاله موضوعی را مطرح خواهم کرد که شاید برای خیلی‌ها این نوع کد نویسی خوشایند نباشد. حتی برای خود من هم خوشایند نیست؛ ولی نهایتا در بهبود Performance تاثیر خیلی زیادی دارد. به کد زیر دقت کنید. <div ng-repeat="item in items"> <div ng-if="setting.header">{{item.header}}</div> <div>{{item.title}}</div> <div ng-if="setting.footer">{{item.footer}}</div> </div> ...
Performance در AngularJS قدم چهارم
امیدوارم از مقالات قبلی لذت برده باشید. در این مقاله می‌خواهم در مورد $watch صحبت کنم. سوال اول: $watch چیست و چه کاربردی دارد؟ $watch همان عملکرد Watching در AngularJS را انجام می‌دهد؛ ولی کاربردهای جالبی دارد. به کد زیر دقت کنید. var errorChat=false; $scope.$watch(function () { return errorChat; }, function (newValue, oldValue) { if(newValue ==true){ alert('قسمت محاوره سامانه با مشکل ...
Performance در AngularJS قدم سوم
خیلی خوشحالم که تا این مرحله، این مقاله‌ها را دنبال می‌کنید. در مقالات قبل مسائل ساده و مهمی در بحث Performance مطرح شد. در این مقاله می‌خواهم قدم سوم در بهبود Performance را توضیح دهم که رعایت کردن این مسائل می‌تواند کمک زیادی در بهبود عملکرد برنامه‌های مبتنی بر AngularJS داشته باشد. scope؟ همه‌ی برنامه نویسان و توسعه دهندگان، یکی از اولین مفاهیمی را که در AngularJS یاد می‌گیرند، scope هست. اما scope چیست؟ به صورت خی ...
Performance در AngularJS قدم دوم
در مقاله‌ی قبل روش درست استفاده کردن از Binding را برای بهبود Performance، توضیح دادم. در این مقاله می‌خواهم در مورد ng-if و فرق آن با ng-show صحبت کنم و اینکه کدامیک Performance بهتری را برای AngularJS فراهم می‌کنند. سول اول، کار ng-show چیست؟ ng-show یکی از پر کاربردترین Directiveهای AngularJS است که وظیفه‌ی Show و Hide قسمتی از Vew را به عهده دارد. به کد زیر توجه کنید: <div ng-show="has"> <div ...
Performance در AngularJS قدم اول
به احتمال زیاد برنامه نویسانی که از AngularJS در پروژه‌های خود استفاده می‌کنند، در برخی موارد کند شدن در Rendering و Binding صفحات را تجربه کرده اند. این مقاله مطالب خیلی ساده و راحتی در خصوص استفاده درست و بهینه از Binding می‌باشد. قدم اول و مهم بحث on time binding هست: در برخی موارد ما اطلاعاتی که فقط یکبار Bind می‌شوند و در طول اجرا هیچ تغییری نمی‌کنند را درست Bind نمی‌کنیم. برای مثال فرض کنید می‌خواهیم عنوان صفحه را در ی ...
زیرنویس فارسی ویدئوهای مقدمات AngularJS - قسمت ششم (قسمت آخر)
زیرنویس‌های فارسی قسمت ششم را می‌توانید از اینجا دانلود کنید. لیست سرفصل‌های این قسمت به شرح زیر است: 01. Introduction 02. Installing Karma 03. Karma with Webstorm 04. Testing Controllers 05. Testing Simple Services 06. Testing Services with Dependencies 07. Testing AJAX Services 08. Testing Filters 09. Testing Directives - Overview 10. Setting up Karma for Testing Directives 11. Testing Directives 12. End to ...
ارث بری prototype ای در جاوا اسکریپت به زبان خیلی ساده
انگیزه اصلی این نوشته شروع کار با AngularJs و استفاده از scope در این کتابخانه است. بیشتر دوستانی که کار با این کتابخانه را شروع می‌کنند و تجربه زیادی با جاوا اسکریپت ندارند، با مفهوم ارث بری scope مشکل پیدا می‌کنند. ارث بری در scope ‌های AngularJs موضوع پیچیده و عجیب و غریبی نیست. در واقع همان ارث بری prototyp ...