کار با modal dialogs مجموعه Bootstrap در برنامههای Angular
در مطلب «Angular CLI - قسمت ششم - استفاده از کتابخانههای ثالث» با نحوهی دریافت، نصب و راه اندازی کتابخانهی ngx-bootstrapآشنا شدیم. در اینجا میخواهیم نحوهی کار با کامپوننت Modal آن را بررسی کنیم....
View Articleبررسی روش تعریف انقیاد دو طرفهی سفارشی در کامپوننتهای Angular
برخلاف AngularJS، در برنامههای Angular امکانات two way data binding به صورت پیشفرض ارائه نمیشوند تا از تمام مشکلات آن مانند digest cycle ،watchers و غیره خبری نباشد. اما گاهی از اوقات نیاز است...
View Articleتزریق وابستگیها فراتر از کلاسها در برنامههای Angular
عموما تزریق وابستگیهای کلاسها، در برنامههای Angular صورت میگیرند. برای مثال در یک NgModule در قسمت providers آن نام کلاسی را معرفی میکنیم و سپس میتوان این کلاس را به سازندهی کامپوننتها تزریق...
View Articleایجاد تایمرها در برنامههای Angular
عموما در برنامههای جاوا اسکریپتی با استفاده از متدهای setTimeout و setInterval میتوان یک تایمر را ایجاد کرد. اما در برنامههای Angular با توجه به استفادهی از کتابخانهی RxJS، امکان ایجاد تایمرهای...
View Articleاحراز هویت و اعتبارسنجی کاربران در برنامههای Angular - قسمت اول - معرفی و...
قصد داریم در طی یک سری مطلب، یک کلاینت Angular 5.x را برای مطلب «اعتبارسنجی مبتنی بر JWT در ASP.NET Core 2.0 بدون استفاده از سیستم Identity» تهیه کنیم. البته این سری، مستقل از قسمت سمت سرور آن تهیه...
View Articleاحراز هویت و اعتبارسنجی کاربران در برنامههای Angular - قسمت دوم - سرویس...
در قسمت قبل، ساختار ابتدایی کلاینت Angular را تدارک دیدیم. در این قسمت قصد داریم سرویسی که زیر ساخت کامپوننت لاگین و عملیات ورود به سیستم را تامین میکند، تکمیل کنیم.تعریف تزریق وابستگی تنظیمات برنامه...
View Articleاحراز هویت و اعتبارسنجی کاربران در برنامههای Angular - قسمت سوم - ورود به...
پس از ایجاد AuthService در قسمت قبل، اکنون میخواهیم از آن برای تکمیل صفحهی ورود به سیستم و همچنین تغییر منوی بالای برنامه یا همان کامپوننت header استفاده کنیم. ایجاد ماژول Dashboard و تعریف کامپوننت...
View Articleاحراز هویت و اعتبارسنجی کاربران در برنامههای Angular - قسمت چهارم - به روز...
در قسمت قبل، عملیات ورود به سیستم و خروج از آنرا تکمیل کردیم. پس از ورود شخص به سیستم، هربار انقضای توکن دسترسی او، سبب خواهد شد تا وقفهای در کار جاری کاربر، جهت لاگین مجدد صورت گیرد. برای این منظور،...
View Articleاحراز هویت و اعتبارسنجی کاربران در برنامههای Angular - قسمت پنجم - محافظت...
در قسمت سوم، کار ورود به سیستم و امکان مشاهدهی صفحهی محافظت شدهی پس از لاگین را پیاده سازی کردیم. در این قسمت میخواهیم امکان دسترسی به مسیر http://localhost:4200/protectedPage را کنترل کنیم. تا...
View Articleاحراز هویت و اعتبارسنجی کاربران در برنامههای Angular - قسمت ششم - کار با...
پس از تکمیل کنترل دسترسیها به قسمتهای مختلف برنامهبر اساس نقشهای انتسابی به کاربر وارد شدهی به سیستم، اکنون نوبت به کار با سرور و دریافت اطلاعات از کنترلرهای محافظت شدهی آن است.افزودن کامپوننت...
View Articleیافتن خطاهای متداول کدهای جاوا اسکریپتی با غنی سازی تنظیمات کامپایلر TypeScript
یکی از اهداف مهم استفادهی از TypeScript، یافتن خطاهای متداول کدهای جاواسکریپتی، پیش از اجرای آنها در مرورگر است. برای مثال، قطعه کد زیر: defaultChecks() { const author = { firstName: "Vahid",...
View Articleنوعهای نال نپذیر در TypeScript
تا پیش از ارائهی کامپایلر TypeScript 2.0، مقادیر null و undefined، به هر نوعی قابل انتساب بودند و امکان تفکیک آنها وجود نداشت که این مورد میتواند منشاء بروز بسیاری از خطاهای در زمان اجرا شود. let...
View Articleبررسی معادلهای LINQ to Objects در TypeScript
اگر برنامه نویس NET. باشید، پس از مدتی کار با LINQ، در سایر زبانهای دیگر نیز به دنبال این قابلیت فوق العادهی functional یا تابعی خواهید گشت. در این مطلب، خلاصهای از متدهای توکار جاوا اسکریپت را که...
View Articleالگویی برای مدیریت دسترسی همزمان به ConcurrentDictionary
ConcurrentDictionary، ساختار دادهای است که امکان افزودن، دریافت و حذف عناصری را به آن به صورت thread-safe میسر میکند. اگر در برنامهای نیاز به کار با یک دیکشنری توسط چندین thread وجود داشته باشد،...
View Articleروش استفادهی صحیح از HttpClient در برنامههای دات نت
اگر در کدهای خود قطعه کد ذیل را دارید:using(var client = new HttpClient()) { // do something with http client } استفادهی از using در اینجا، نهتنها غیرضروری و اشتباه است، بلکه سبب از کار افتادن زود...
View Articleبررسی نکات دریافت فایلهای حجیم توسط HttpClient
HttpClient به عنوان جایگزینی برای HttpWebRequest API قدیمی، به همراه NET 4.5. ارائه شد و هدف آن یکپارچه کردن پیاده سازیهای متفاوت موجود به همراه ارائه راهحلی چندسکویی است که از WPF/UWP ، ASP.NET تا...
View Articleاز سرگیری مجدد، لغو درخواست و سعی مجدد دریافت فایلهای حجیم توسط HttpClient
پس از آشنایی با «نکات دریافت فایلهای حجیم توسط HttpClient»، در ادامه میتوان سه قابلیت مهم از سرگیری مجدد، لغو درخواست و سعی مجدد دریافت فایلهای حجیم را با HttpClient، همانند برنامههای download...
View Articleدریافت و نمایش تصاویر از سرور در برنامههای Angular
عملیات دریافت اطلاعات راه دور، در برنامههای Angular به صورت Ajaxانجام میشود. در این حالت، پردازش تصاویر دریافتی از سرور، به علت داشتن محتوای باینری، نیاز به رعایت یک سری نکات خاص دارد که آنها را در...
View Articleنمایش، ذخیره و چاپ فایلهای PDF در برنامههای Angular
با توجه به اینکه فایلهای PDF نیز فایل باینری هستند، کلیات نکات مطلب «دریافت و نمایش تصاویر از سرور در برنامههای Angular» در مورد آنها هم صادق است. در اینجا به تکمیل این نکات پرداخته و مواردی را...
View Articleنمایش Breadcrumbs در برنامههای Angular
داشتن Breadcrumbs یکی از گزینههای مفید بهبود کاربری هر سایتی است و در برنامههای Angular با کوئری گرفتن از سیستم مسیریابی آن میتوان به سادگی آنها را تولید کرد.ایجاد ساختاری برای نگهداری آرایهی...
View Article