پیش نیاز : هدایت خودکار کاربر به صفحه لاگین در حین اعمال Ajax ایی
Angular Interceptors
ابتدا مشکل و هدف را بیان میکنیم: مشکل : کاربر در صفحهای حضور دارد که نیاز به اعتبارسنجی داشته و مدت اعتبار کاربر نیز تمام شده است، ولی هنوز در صفحهای که نباید حضور داشته باشد، حضور دارد و بدتر از آن این است که میتواند درخواستهای بی نتیجهای را نیز ارسال کند. ...
در بخش قبلی به چگونگی ساخت کنترلرهای تو در تو در AngularJs پرداختیم. همچنین بررسی نمودیم که propertyهای تعریف شده در کنترلر ما چگونه قابل استفاده توسط کنترلر فرزند میباشند. حال روشی دیگر را برای ارث بری تابعها و propertyها، در کنترلرهای تو در تو معرفی مینماییم. لازم به ذکر است که سورس پروژه را میتوانید از لینک زیر دریافت نمایید: AngularJsNestedController.zip کد جاوااسکریپت زیر سه کنترلر تو در تو را پیاده سازی میکند: ...
در این مقاله قصد داریم تا به بررسی و پیاده سازی کنترلرهای تو در تو در AngularJs بپردازیم. به این صورت که میتوانیم در یک صفحه یک کنترلر اصلی را در نظر بگیریم و کنترلرهای دیگر را در این کنترلر قرار دهیم. نحوهی ارث بری متغیرها، انقیاد دادهها و مقادیر تعریف شده در $scope، از جمله مواردی است که به آن خواهیم پرداخت. تمامی مواردی که ذکر خواهد شد در قالب یک پروژه قرار داده شده است. AngularJsNestedController.zip حال به بررسی جزئی کنترلر ...
در این مقاله موضوعی را مطرح خواهم کرد که شاید برای خیلیها این نوع کد نویسی خوشایند نباشد. حتی برای خود من هم خوشایند نیست؛ ولی نهایتا در بهبود 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>
...
امیدوارم از مقالات قبلی لذت برده باشید. در این مقاله میخواهم در مورد $watch صحبت کنم. سوال اول: $watch چیست و چه کاربردی دارد؟ $watch همان عملکرد Watching در AngularJS را انجام میدهد؛ ولی کاربردهای جالبی دارد. به کد زیر دقت کنید. var errorChat=false;
$scope.$watch(function () {
return errorChat;
}, function (newValue, oldValue) {
if(newValue ==true){
alert('قسمت محاوره سامانه با مشکل ...
خیلی خوشحالم که تا این مرحله، این مقالهها را دنبال میکنید. در مقالات قبل مسائل ساده و مهمی در بحث Performance مطرح شد. در این مقاله میخواهم قدم سوم در بهبود Performance را توضیح دهم که رعایت کردن این مسائل میتواند کمک زیادی در بهبود عملکرد برنامههای مبتنی بر AngularJS داشته باشد. scope؟ همهی برنامه نویسان و توسعه دهندگان، یکی از اولین مفاهیمی را که در AngularJS یاد میگیرند، scope هست. اما scope چیست؟ به صورت خی ...
در مقالهی قبل روش درست استفاده کردن از Binding را برای بهبود Performance، توضیح دادم. در این مقاله میخواهم در مورد ng-if و فرق آن با ng-show صحبت کنم و اینکه کدامیک Performance بهتری را برای AngularJS فراهم میکنند. سول اول، کار ng-show چیست؟ ng-show یکی از پر کاربردترین Directiveهای AngularJS است که وظیفهی Show و Hide قسمتی از Vew را به عهده دارد. به کد زیر توجه کنید: <div ng-show="has">
<div ...
به احتمال زیاد برنامه نویسانی که از AngularJS در پروژههای خود استفاده میکنند، در برخی موارد کند شدن در Rendering و Binding صفحات را تجربه کرده اند. این مقاله مطالب خیلی ساده و راحتی در خصوص استفاده درست و بهینه از Binding میباشد.
قدم اول و مهم بحث on time binding هست: در برخی موارد ما اطلاعاتی که فقط یکبار Bind میشوند و در طول اجرا هیچ تغییری نمیکنند را درست Bind نمیکنیم. برای مثال فرض کنید میخواهیم عنوان صفحه را در ی ...
زیرنویسهای فارسی قسمت ششم را میتوانید از اینجا دانلود کنید. لیست سرفصلهای این قسمت به شرح زیر است: 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 ...
انگیزه اصلی این نوشته شروع کار با AngularJs و
استفاده از scope در
این کتابخانه است. بیشتر دوستانی که کار با این کتابخانه را شروع میکنند و تجربه
زیادی با جاوا اسکریپت ندارند، با مفهوم ارث بری scope مشکل پیدا میکنند. ارث بری در scope های AngularJs موضوع پیچیده و عجیب و غریبی نیست. در واقع همان
ارث بری prototyp ...