در این آموزش تصویری با نحوه کار با Angular 2  به زبان TypeScript آشنا می شوید. در این دوره نحوه ساخت فرم ، کار با TypeScript و Angular 2 ، ساخت برنامه های کاربردی تک صفحه ای ، اعتبارسنجی داده های ورودی و کار با رابط کاربری را می آموزید. در ادامه کار با کلاس ها ، ماژول ها ، توابع سازنده ، خواص توابع و نحوه کار با HTML ، CSS و Javascript را مورد بررسی قرار می دهد.

این دوره آموزشی محصول موسسه Udemy است.

سرفصل های دوره:

  • شروع به کار Angular 2
  • مبانی Angular 2
  • معماری Angular 2
  • راه اندازی TypeScript
  • ساخت اجزای برنامه
  • کار با قالب ها
  • معرفی Dependency Injection
  • کار با دستورات برنامه
  • پردازش رویدادها
  • کار با کلاس ها
  • نحوه برنامه نویسی صحیح
  • کار با API ها
  • کار با خروجی برنامه
  • ساخت کامپوننت های برنامه
  • استفاده از stackoverflow
  • کار با HTML
  • نحوه اعتبار سنجی داده های ورودی
  • کار با Bootstrap
  • کرا با ControlGroup
  • اعتبارسنجی خطاها
  • ساخت یک فرم عمومی
  • ساخت کنترل ها
  • استفاده از FormBuilder
  • استفاده از عملگرهای شرطی
  • کار با اپراتورها
  • نحوه اتصال به سرور
  • ارسال داده ها به سرور
  • کار با کلاس های JSONP
  • نحوه دسترسی به منابع
  • کار با GitHub
  • نحوه مسیریابی برنامه
  • پیکربندی مسیر
  • نحوه لینک گذاری بین صفحات وب
  • راه اندازی یک SPA
  • ساخت فرم
  • نحوه به روز رسانی کاربر
  • پیاده سازی فیلترها
  • نحوه صفحه بندی داده ها
  • تجدید ساختار برنامه
  • و…

عنوان دوره: Udemy Angular 2 with TypeScript for Beginners: The Pragmatic Guide
مدت زمان: 6 ساعت و 30 دقیقه
نویسنده: Mosh Hamedani


توضیحات:

Udemy Angular 2 with TypeScript for Beginners: The Pragmatic Guide

Mosh Hamedani
6.5 Hours
All Levels

Angular 2 is the next big thing. It's one of the leading frameworks for building modern, scalable, cross-platform apps. If you want to establish yourself as a front-end or a full-stack developer, you need to learn Angular 2.
In Angular 2 with TypeScript, Mosh, author of six 5-star Udemy courses, takes you on a fun, hands-on and pragmatic journey to master Angular 2.
More specifically, you'll learn how to:
Build re-usable components
Control rendering of HTML
Format data using pipes
Implement custom pipes
Build forms with custom validation
Use Reactive Extensions and Observables to handle asynchrony
Consume back-end services and APIs
Build single page apps (SPA)
Use dependency injection to write loosely-coupled, testable code
Resolve common Angular 2 errors
Write cleaner, more maintainable code
And much more...
If you've taken any of Mosh's courses before, you know what you get. He is very passionate, clear and concise in his teaching. Every section and every lecture has been perfectly thought through to lead you on a step-by-step journey from zero to hero with no fluff whatsoever. If you're looking for 10+ hours of wasted time on the content you don't need and a rambling instructor, there are other courses you can enrol in.
You'll start building Angular 2 apps within minutes. Every section includes a few bite-sized videos, and concludes with a coding exercise to help you master what you learn in that section. The last two sections are purely coding exercises.
At the end of this course, you'll build an application that exhibits many features you find in a lot of real-world applications, including but not limited to:
CRUD operations against a backend API
Form with custom validation
Dirty tracking
Master / detail views
Loading content dynamically
Showing spinner icons while content is loading
Filtering
Paging
More...
Reviewed by Todd Motto (Google Developer Expert):
Mosh has a fantastic teaching style, and just delivered the best online course I've seen in a long time. Mosh's approach to teaching and guiding makes no assumptions on existing Angular 1.x knowledge, but helps those who have to clarify new concepts. Mosh guides you through critical concepts slowly without skipping over details, and the course is extremely worth investing a few hours in, your understanding of Angular 2 will reach new levels. He fills all the gaps, presents impeccably well and the preparation was top notch, seriously can't recommend the course enough.
And here is what other students who have taken this course say:
"Great course, even for seasoned developers. I'm a ReactJs developer using this to broaden my horizons!" -Tyler Markvluwer
"Mosh is a great instructor, he is very clear and concise and breaks down his examples into small "components" (drum roll please). Having never used Angular before, I'm really impressed at how easy it was to understand the concepts and even managed most of the examples without having to refer back to the lectures and that is in no small part due to Mosh's understanding of Angular and how well he explains everything. If you can't already tell, I'm really impressed Mosh" -Chris Graham
"It's the best angular2 video that i ever seen. It's all well explained and easy to understand. It's not need have angular1 knowledge. I'm happy because i've grown as a developer. Thanks" -Miguelangel Cabrera
"Very good step by step explainations. Focus on "why", then "how" instead of "type after me". Love it!" -Krysztof Gurniak
"As the absolute Angular newbie I was, I can recommend this course 100%." -Guillermo Aguyanes
"Mosh does a great job at explaining templates, directives, dependency injections and everything else. 10/10 would take his course again." -Rob
So, if you're looking for an Angular 2 course with
A passionate coder and instructor who knows his craft
Perfect structure
Balanced mix of theory and practice
Clear, concise and bite-sized videos
Lots of real-world examples and coding exercises
World-class audio / video production
Don't look further. Enrol in the course now and learn to build real-world apps with Angular 2 with confidence.
FREQUENTLY ASKED QUESTIONS
1- Do I need to know Angular 1 before taking this course?
No! Angular 2 is an entirely new framework and this course assumes no prior knowledge of Angular.
2- Angular 2 is in beta. Will this course be updated?
Certainly, This course will be updated continuously until final version of Angular 2.
3- Why is the course with TypeScript? Why not Javascript?
TypeScript is a superset of Javascript, meaning any valid Javascript code is valid TypeScript. If you can write Javascript code, you can write TypeScript code! So you don't have to learn a new programming language. TypeScript brings many useful features to Javascript that are missing in the current version of Javascript. We get classes, modules, interfaces, properties, constructors, access modifiers (e.g. public/private), IntelliSense and compile-time checking. So, we can catch many programming errors at compile-time.
Angular 2 is written in TypeScript. Plus, most of their documentation is in TypeScript. And for that reason, TypeScript will be the dominant language in building Angular 2 apps.
If you've never programmed in TypeScript, don't be afraid. It's very easy to pick up, and you're going to absolutely love it.
4- Why should I pay for this course when there are lots of free tutorials available?
Free tutorials and YouTube videos are free for a reason. They introduce you to a few concepts here and there, but soon you'll find yourself jumping from one tutorial to another to fill the missing gaps. By taking a perfectly-structured course, you'll be confident that you're in good hands, right from the beginning all the way through to the very end. You pay for saving your precious time: the time that you can spend on the things you love.
30-DAY FULL MONEY-BACK GUARANTEE
This course comes with a 30-day full money-back guarantee. Take the course, watch every lecture, and do the exercises, and if you feel like you haven't gained the confidence to build real-world apps with Angular 2, ask for a full refund within 30 days. All your money back, no questions asked.
ABOUT YOUR INSTRUCTOR
Mosh (Moshfegh) Hamedani is a software engineer with 15 years of professional experience, mainly in building web-based applications. He is the author of six 5-star Udemy courses with more than 13,000 students. He is passionate, pragmatic and motivational in his teaching.
DO YOU WANT TO BUILD APPS WITH ANGULAR 2 WITH CONFIDENCE?
If you enrol in the course now, you'll start building your Angular 2 apps in only a few minutes. Enrol in the course now and get started.
What are the requirements?
Minimum 3 months experience developing web applications (familiarity with HTML, CSS, Javascript, APIs)
Basic familiarity with the concept of object-oriented languages (eg. classes, properties, methods, constructors) is required
Familiarity with Bootstrap is a bonus
What am I going to get from this course?
Over 150 lectures and 6.5 hours of content!
Establish yourself as a front-end developer who can build real-world apps with Angular 2
Master the core Angular 2 concepts and how to use them in building real-world apps
Understand what single page applications (SPA) are and how to build them
Understand and resolve common Angular 2 errors
Learn ways to write cleaner, more maintainable code
Build re-usable components
Build forms with custom validation
Use Reactive Extensions and Observables to handle asynchrony
Connect to backend services and APIs
Understand what dependency injection is and use it to build loosely-coupled, testable apps
Huge discount on my other courses
What is the target audience?
Web developers wanting to build apps with Angular 2

Section 1: Getting Started with Angular 2
Lecture 1
What is Angular?
03:30
A 3-minute introduction to the course, covering:
What is Angular?
Why you can do with it?
There are many other frameworks out there, why Angular?
What you're going to learn in this course
Lecture 2
Architecture of Angular 2 Apps
04:53
Angular 2 embraces component-based architecture. In this video, we'll explore the core building blocks of Angular 2 apps and their responsibilities.
Lecture 3
Setting Up the Development Environment
01:38
This video shows you the tools you need to start coding Angular 2 apps.
Lecture 4
Your First Angular 2 App
04:36
I've created a sample seed project based on the guidelines on the Angular website. In this video, we'll set up our web server and run our first Angular 2 app.
Lecture 5
TypeScript Compilation
03:13
Browsers don't understand TypeScript. So, we need to compile, or more accurately transpile our TypeScript code into Javascript. This video shows you how.
Quiz 1
Angular Basics Quiz
4 questions
Lecture 6
Course Layout
01:27
A quick overview of how this course is structured and what is and is not included.
Section 2: Angular 2 Jumpstart
Lecture 7
Introduction
00:30
A quick introduction of what you're going to learn in this section.
Lecture 8
Creating Components
04:23
In this video, you'll learn how to create an Angular 2 component.
Lecture 9
Using Components
05:25
This video shows you the steps you need to take in order to use a component.
Lecture 10
Templates
04:30
In this video, we'll have a brief look at templates. You'll learn how to bind a template to properties of your component.
Lecture 11
Services
02:32
To have better separation of concerns and build more maintainable applications, our components should delegate any non-UI logic to a service. In this video, you'll learn how to create a service.
Lecture 12
Dependency Injection
05:46
In this video, I'll explain whats, whys and hows about dependency injection.
Lecture 13
Cheat Sheet
Article
A cheat of sheet of the materials in this section.
Lecture 14
Exercise
00:57
As part of this exercise, you'll create a component and a service from scratch. You'll also use dependency injection to inject your new service into your component.
Lecture 15
Code Review
02:22
A quick review of my solution.
Lecture 16
Directives
08:02
We use directives to work with the DOM. In this video, you'll learn how to create a custom directive that makes a textbox automatically grow in size when receiving focus.
Lecture 17
Summary
00:26
A summary of what you've learned in this section and what is coming next.
Section 3: Displaying Data and Handling Events
Lecture 18
Introduction
00:22
A quick introduction of what you're going to learn in this section.
Lecture 19
Property Binding
03:25
We can bind properties of DOM elements to our component properties. When the value of a component property changes, the DOM element is automatically updated. In this video, you'll learn two ways to use property binding in Angular 2.
Lecture 20
Class Binding
01:48
This video shows you how to dynamically add CSS classes to DOM elements.
Lecture 21
Style Binding
01:10
In this video, you'll learn how to dynamically apply CSS styles to DOM elements.
Lecture 22
Event Binding
06:12
We can handle events raised from our DOM elements in our components. This video shows you two ways to bind event raised from elements to methods in components.
Lecture 23
Two-way Binding
05:23
We use two-way binding in forms to keep input fields in sync with component properties. With two-way binding, whether the data changes in the component, or in the view, both the view and the component will be in sync.
Lecture 24
Cheat Sheet
Article
Here is the cheat sheet for all the stuff you learned in this section.
Lecture 25
Exercise: Building a Favorite Component
01:35
Build a favorite component, like what you see on StackOverflow.
Lecture 26
Code Review
01:39
In this video, I walk you through my solution to the coding exercise.
Lecture 27
Summary
00:25
A quick recap of what you learned in this section and what is coming next.
Section 4: Building Re-usable Components
Lecture 28
Introduction
00:21
A quick introduction of what you're going to learn in this section.
Lecture 29
Component API
01:42
What makes up a component's public API? Its input and output properties. In this video, we'll explore components API with a real-world example.
Lecture 30
Input Properties
04:27
In this vide, you'll learn how to create input properties using @Input annotation and component metadata.
Lecture 31
Output Properties
04:31
In this video, you'll learn how to create output properties using @Output annotation and component metadata.
Lecture 32
Templates
02:55
This video shows you how to create external templates.
Lecture 33
Styles
03:31
In this video, I'll show you how you can define "scoped" styles for your components that don't leak outside the component's template. You'll learn how to use both inline and external stylesheets.
Lecture 34
Cheat Sheet
Article
Cheat sheet for Angular components.
Lecture 35
Exercise: Building a Like Component
01:15
As part of this exercise, you'll implement a like button like what you see on Twitter.
Lecture 36
Code Review
02:35
Review of my implementation of Twitter like button.
Lecture 37
Exercise: Building a Voter Component
03:25
As part of this exercise, you'll implement a vote component like the one used on StackOverflow.
Lecture 38
Code Review
04:10
Review of my implementation of StackOverflow's voting component.
Lecture 39
Challenge
02:17
Are you up for a challenge? Use what you've learned so far and build a simple Twitter page with the list of tweets. Re-use the LikeComponent you created earlier.
Lecture 40
Summary
00:34
A quick recap of what you learned in this section and what is coming next.
Section 5: Controlling Rendering of HTML
Lecture 41
Introduction
00:19
A quick introduction of what you're going to learn in this section.
Lecture 42
ngIf
04:30
In this video, you'll learn how to use the *ngIf directive to dynamically add / remove DOM elements.
Lecture 43
ngSwitch
07:04
ngSwitch is another directive we use for adding a DOM element sub-tree. It's often useful in building tabbed views. This video teaches you how to use ngSwitch and other related directives: ngSwitchWhen and ngSwitchDefault.
Lecture 44
ngFor
02:13
In this video, we'll take another look at ngFor for rendering a list of items. You'll learn learn how to render an index next to each item.
Lecture 45
The Leading Asterisk
02:22
A few structural directives like *ngIf and *ngFor include a leading asterisk. In this video, I'll explain why this asterisk is required and what happens under the hood.
Lecture 46
Pipes
05:39
We use pipes to format data (strings, numbers, currency, date, etc). In this video, I'll introduce you to various built-in pipes in Angular.
Lecture 47
Creating Custom Pipes
04:36
At times you may need to format data in a specific way that is not supported by any of the built-in pipes. This video shows you how to create a custom pipe and re-use it in your applications.
Lecture 48
ngClass
02:23
In this video, you'll learn how to use ngClass to add multiple classes to a DOM element dynamically.
Lecture 49
ngStyle
01:58
In this video, you'll learn how to use ngStyle to add multiple styles to a DOM element dynamically.
Lecture 50
Elvis Operator
03:15
Elvis operator makes it easy to work with nullable properties in binding expressions. In this video, you'll learn how to write cleaner code using Elvis Operator when dealing with nullable properties.
Lecture 51
ng-content Element
05:45
This video teaches how you to inject content into a component's template from the outside.
Lecture 52
Cheat Sheet
Article
Cheat sheet for this section.
Lecture 53
Exercise: Building a Zippy / Accordion
01:51
As part of this exercise, you'll implement a re-usable zippy or accordion component.
Lecture 54
Code Review
03:32
Review of my solution to the zippy component.
Lecture 55
Summary
00:36
A quick recap of what you've learned in this section and what is coming next.
Section 6: Building Forms with Basic Validation
Lecture 56
Introduction
00:34
A quick introduction of what you're going to learn in this section.
Lecture 57
Building a Basic Form
07:00
In this video, we'll build a simple Bootstrap form and that we'll use throughout this section.
Lecture 58
Control and ControlGroup
03:18
Control and ControlGroup classes are the basis of building forms in Angular. This video gives you an overview of these classes.
Lecture 59
ngControl
06:13
In this video, you'll learn how to bind an input field to a control object using ngControl directive.
Lecture 60
Showing Validation Errors
07:00
Here, we'll extend our form and add basic validation. You'll learn how to show validation errors and highlight the input fields with errors.
Lecture 61
Showing Specific Validation Errors
06:05
Sometimes an input field can have multiple validation rules. In this video, you'll learn how to add multiple validation rules to an input field and display specific validation messages for each error.
Lecture 62
ngForm
05:17
Another directive that goes hand in hand with ngControl is ngForm. In this video, you'll learn what ngForm is and how to submit a form using ngSubmit.
Lecture 63
Disabling Submit Button
01:27
This video show you how to disable the submit button in a form if the form is not valid.
Lecture 64
Cheat Sheet
3 pages
Cheat sheet of template-driven forms.
Lecture 65
Exercise: Building a Subscription Form
01:10
As part of this exercise, you'll build a subscription form and add client-side validation to it.
Lecture 66
Summary
00:41
A quick recap of the section and what is coming next.
Section 7: Building Forms with Complex Validation
Lecture 67
Introduction
00:20
A quick introduction of what you're going to learn in this section.
Lecture 68
Building a Basic Form
00:47
You already learned how to create a basic Bootstrap form. So, to save your time, I've attached some boilerplate code that we're going to use in this section.

Lecture 69
Creating Controls Explicitly
08:43
In this video, you'll learn how to create Control and ControlGroup objects explicitly and how to bind your form with this ControlGroup using ngFormModel directive.
Lecture 70
Using FormBuilder
02:29
There is a simpler way to create Control and ControlGroup objects, and that is by using FormBuilder class. This video teaches you how to do that.
Lecture 71
Implementing Custom Validation
06:58
When you create Control objects explicitly, you have full control over validation logic. In this video, I'll teach you how to create a custom validator and add it to an input field.
Lecture 72
Async Validators
08:37
Sometimes we need to contact the server to get the validation result. For example, when checking for the uniqueness of a username. That's when we use an asynchronous validator, that returns a Promise. In this video, I'll show you how to create an async validator.
Lecture 73
Showing a Loader Image
01:48
With async validators, often there is a small delay until we get the validation result. In this video, I show you how to add a loader image next to an input field until we get the validation result.
Lecture 74
Validating Upon Form Submit
03:09
Sometimes we need to validate a form upon submit. An example of this is a login form. We can't validate a username or password individually. In this video, you'll learn how to validate the form upon submit and add errors to the form.
Lecture 75
Cheat Sheet
4 pages
Cheat sheet of model-driven forms.
Lecture 76
Exercise: Building a Change Password Form
02:51
As part of this exercise, you'll implement a change password form with custom validators.
Lecture 77
Summary
00:54
A quick recap of this section and what is coming next.
Section 8: Introduction to Reactive Extensions
Lecture 78
Introduction
00:33
A quick introduction of what you're going to learn in this section.
Lecture 79
What is Reactive Extensions?
01:48
A quick introduction to Reactive Extensions library, how Angular uses that and why you need to become familiar with it.
Lecture 80
Callback Hell
05:51
One of the problems that Reactive Extensions and Observables are designed to solve is the callback hell. In this video, you'll see an example of callback hell in a real-world scenario.
Lecture 81
Observables
02:47
Here is a quick introduction to observables and various ways we can create them.
Lecture 82
Creating Observables
02:43
In this video, I'll show you how to create an observable from a DOM event.
Lecture 83
Using Observable Operators
04:19
Once we have an observable, we can chain multiple operators to it. This video shows you various useful observable operators: map, filter, debounceTime and distinctUntilChanged.
Lecture 84
Transforming Observables
05:37
We can chain an observable stream to another stream. In this video, I'll show you a very powerful technique to chain multiple observables and transform them.
Lecture 85
Cancelling Subscriptions
00:52
Unlike promises, observables can be cancelled. This video shows you how easy it is to cancel an observable.
Lecture 86
Importing Operators
02:26
If you're building performance-critical applications that should run smoothly on mobile devices, you should use the stripped down observable created by Angular team and import the operators manually. This video shows you how.
Lecture 87
Exercises
00:53
A bunch of exercises to take your understanding of observables and their real-world use cases to the next level.
Quiz 2
Reactive Extensions Quiz
8 questions
Lecture 88
Summary
00:56
A quick recap of what you learned in this section and what is coming next.
Section 9: Connecting to the Server
Lecture 89
Introduction
00:14
A quick introduction of what you're going to learn in this section.
Lecture 90
A Simple RESTful API
01:32
In this video, I'll introduce you to a simple RESTful API we will be using throughout this section.
Lecture 91
Getting Data from the Server
06:30
In this video, you'll learn how to get data from the server using Http class. You'll see observables in action.
Lecture 92
Sending Data to the Server
01:48
We extend our little app and use another method of Http class for posting data to the server.
Lecture 93
Dependency Injection
05:11
In this video, you'll learn about @Injectable annotation and providers property of component metadata.
Lecture 94
Component's Lifecycle Hooks
02:56
Components have lifecycle hooks that we can tap into. By implementing certain interfaces on our components, we can get the opportunity to be notified during various stages of a component's lifecycle.
Lecture 95
Static Type Checking
05:42
This lecture is more about TypeScript and how we can achieve static type checking and intellisense by using type annotations.
Lecture 96
Showing a Loader Icon
03:39
When waiting for the results from the server, it's good to display a loader icon to the user. This video teaches you how to do so.
Lecture 97
Using Promises
01:29
Both Http and Jsonp classes in Angular 2 are implemented around observables. So, all their methods return an observable. If you still prefer to work with promises, you can convert an observable to a promise. In this video, you'll learn how.
Lecture 98
Accessing Cross-Domain Resources
02:38
In this video, you'll learn how to use Jsonp class to access cross-domain resources.
Lecture 99
Cheat Sheet
Article
Cheat sheet for connecting to the server.
Lecture 100
Exercise: Building a GitHub User Profile Page
00:47
As part of this exercise, you'll build a simple GitHub user's page. You'll send parallel requests to get the user's profile and followers from GitHub.
Lecture 101
Code Review
04:39
Review of my solution.
Lecture 102
Summary
00:29
A quick recap of what you learned in this section and what is coming next.
Section 10: Building Single Page Apps
Lecture 103
Introduction
00:18
A quick introduction of what you're going to learn in this section.
Lecture 104
Seed Project
00:47
The seed project we're going to use throughout this section.
Lecture 105
Enabling Routing
03:09
Unless you want to build a single page application (SPA), you don't need routing. That's why routing is a separate module in Angular 2 and you need to enable it first.
Lecture 106
Configuring Routes
05:10
In this lecture, you'll learn how to configure various routes with different patterns (e.g. including parameters, wildcards, etc).
Lecture 107
Router Outlet
02:21
As the user navigates in the application, the router activates a component and renders it in a router outlet. So, a router outlet is a placeholder for rendering content. This video shows you the steps to use router outlet.
Lecture 108
Adding Links
05:46
In single page apps, we don't use the HREF attribute of hyperlinks (). This video explains the reason and shows you how to add links in your single page apps.
Lecture 109
Route Parameters
04:45
Sometimes we need to pass parameters in routes (e.g. the ID of a user to view). In this video, you'll learn how to pass parameters to a route, and how to extract them in the target component.
Lecture 110
Imperative Navigation
01:44
We don't always navigate the users using hyperlinks. Sometimes, we redirect them as a result of submitting the form. This is called imperative navigation. In this video, you'll learn how to use the router object to navigate the user imperatively.
Lecture 111
Implementing Dirty Checking
05:44
If the user is filling out a form and accidentally clicks a link or the browser's back / forward buttons, they'll lose all the data in the form. Routers provide lifecycle hooks we can tap into. When the user is navigating away from a form, we can check to see if the form is dirty and confirm them if they would like to navigate away. This video shows you how to implement this.
Lecture 112
Structuring Large Apps
01:45
As your application grows, you need a better way to organize it. This video introduces you to "feature areas", and how to create child routing components for each feature area.
Lecture 113
Cheat Sheet
Article
Angular routers cheat sheet.
Lecture 114
Exercise: Archives in a Blog
01:42
As part of this exercise, you'll simulate the archiving feature of a blogging engine. You'll use various routing features to navigate the user to different archives.
Lecture 115
Summary
00:47
A quick recap of what you've learned in this section and what is coming next.
Section 11: Project: Building a Real-world App (CRUD Operations)
Lecture 116
Introduction
00:40
Lecture 117
Adding a Navbar
02:07
Lecture 118
Code Review
02:05
Lecture 119
Setting Up a Basic SPA
01:14
Lecture 120
Code Review
01:47
Lecture 121
Highlighting the Current Menu in Navbar
01:53
Lecture 122
Displaying the List of Users
01:14
Lecture 123
Building a Form
01:54
Lecture 124
Implementing Validation
01:38
Lecture 125
Implementing Dirty Tracking
00:41
Lecture 126
Creating a User
01:34
Lecture 127
Code Review
02:14
Lecture 128
Populating the Form on Edit
02:48
Lecture 129
Code Review and Refactoring
04:52
Lecture 130
Updating a User
01:12
Lecture 131
Deleting a User
01:14
Section 12: Project: Building a Real-world App (More Challenges)
Lecture 132
Introduction
00:44
Lecture 133
Displaying the List of Posts
00:54
Lecture 134
Adding a Loader Icon
00:21
Lecture 135
Extracting a Spinner Component
01:38
Lecture 136
Implementing Master / Detail
01:52
Lecture 137
Loading Related Objects
02:25
Lecture 138
Reusing the Spinner Component
00:28
Lecture 139
Cleaning the Code
00:56
Lecture 140
Filtering
01:26
Lecture 141
Implementing Filtering
09:21
Lecture 142
Implementing Pagination
01:36
Lecture 143
Using External Libraries
04:48
Lecture 144
Paging Data with Underscore
02:19
Lecture 145
Restructuring the Application
03:46
Lecture 146
Where to from Here
01:26
Lecture 147
Additional Resources
01:10
Section 13: Appendix
Lecture 148
Upgrading Angular 1 Apps
Article
Lecture 149
VSCode Snippets for Angular 2
Article
Lecture 150
Sublime Text Snippest for Angular 2
Article