Angular Pro

Online course with Todd Motto with Todd Motto

116 lessons

16 hours

Angular: v5.x.x

Learn Angular inside out. All the advanced features, including RxJS and TypeScript concepts, state management, unit testing and a final app project.

Single course

Single user

2-5 users

6-10 users

11-20 users

21-40 users

$

119

$

189

$

499

$

599

$

899

$

1,099

$

1,499

$

1,799

$

2,499

$

2,899

EU customers: price excludes VAT

Reviews

Our Angular docs writers use Ultimate Angular as I couldn’t think of training I trust more to be accurate and promote best practices.

Jules Kremer

Angular Developer Relations, Google

Todd's Angular courses are one of the best online training classes that can be found. His style and structure are very easy to follow. Todd's courses are always top notch and worth every penny!

John Oswalt

Technical Expert for Walmart Technology

Ultimate Angular definitely gives you an edge. Short bursts of knowledge that provide you a way to step up your game. From the start of the fundamental course, I've been flooded with moments of clarity. I knew that I had gone from applying something to actually understanding what I was doing. That's a drastic difference.

Simon Dufour

JavaScript Developer

Stream or download

Learn at home or on the daily commute. Online or offline viewing.

Free lifetime updates

Never stop learning. Each course comes with unlimited updates forever.

Slack community

Get members-only exclusive access to our private community.

Expert trainers

Hand-crafted courses to guide you every step, in the right direction.

Job ready training, real world scenarios, API exploration and teaching.

Trusted by thousands, there's no better place to learn Angular.

  • Overview, setup and source files

    • Course introduction 00:23

    • Setup instructions Readme

    • Source files Readme

  • Advanced Components

    • Content projection with ng-content 02:54

    • Using ng-content with projection slots 03:10

    • Projecting and binding to components 04:35

    • @ContentChild and ngAfterContentInit 07:32

    • @ContentChildren and QueryLists 03:44

    • @ViewChild and ngAfterViewInit 06:09

    • @ViewChildren and QueryLists 05:12

    • @ViewChild and template #refs 01:49

    • Using ElementRef and nativeElement 03:58

    • Using the platform agnostic Renderer 04:07

    • Dynamic components with ComponentFactoryResolver 07:12

      Free preview
    • Dynamic component @Input data 02:51

    • Dynamic component @Output subscriptions 02:04

    • Destroying dynamic components 02:51

    • Dynamic components reordering 03:26

    • Dynamic <template> rendering with ViewContainerRef 02:50

      Free preview
    • Passing context to a dynamic <template> 03:47

    • Dynamic <template> rendering with ngTemplateOutlet 01:39

    • Using ngTemplateOutlet with context 02:33

    • ViewEncapsulation and Shadow DOM 05:43

    • ChangeDetectionStrategy.OnPush and Immutability 06:22

  • Directives

    • Creating a custom attribute Directive 05:20

    • @HostListener and host Object 05:34

    • Understanding @HostBinding 03:33

    • Using the exportAs property with template refs 05:20

    • Creating a custom structural Directive 12:09

  • Custom Pipes

    • Creating a custom pipe 05:26

    • Pipes as providers 04:00

  • Reactive Forms

    • Reactive Forms setup 05:59

    • FormControls and FormGroups 08:17

    • Componentizing FormGroups 13:13

    • Binding FormControls to <select> 08:45

    • FormGroup collections with FormArray 12:17

      Free preview
    • Adding items to the FormArray 06:38

    • Removing items from the FormArray 07:08

    • FormBuilder API 04:11

    • Http service and joining Observables 23:21

    • Subscribing to the valueChanges Observable 07:29

    • Updating and resetting FormGroups and FormControls 05:07

    • Custom form control base 08:42

    • Implementing a ControlValueAccessor 14:01

    • Adding keyboard events to our control 08:17

    • Validators object for FormControls 06:44

    • FormControl (custom) validators 09:40

    • FormGroup (custom) validators 09:49

      Free preview
    • Async (custom) validators 12:06

  • Routing

    • Enabling route tracing 01:30

    • Subscribing to router events 06:09

    • Router outlet events 03:08

    • Dynamic route resolves with snapshots 19:53

    • Auxiliary named router outlets 05:12

    • Navigating to auxiliary named outlets 04:30

    • Auxiliary Navigation API 04:07

    • Destroying auxiliary outlets 04:13

    • Resolving data for auxiliary outlets 10:58

    • Lazy-loading modules 09:59

    • Preloading lazy-loaded modules 03:01

    • Custom preloading strategies 07:15

    • Protecting lazy-loaded modules with canLoad 09:25

      Free preview
    • Guards with canActivate 05:23

    • Guards with canActivateChild 03:03

    • Guards with canDeactivate 10:25

  • Unit Testing

    • Karma setup and walkthrough 02:58

    • Testing isolate Pipes 05:43

    • Shallow testing Pipes 14:31

    • Testing Services with dependencies 12:24

    • Testing Component methods 05:54

    • Testing @Input and @Output bindings 04:47

    • Testing Component templates 10:09

    • Testing container Components with async providers 13:48

      Free preview
    • Using NO_ERRORS_SCHEMA 02:09

    • Testing an Attribute Directive 06:35

  • Dependency Injection and Zones

    • Providers and useValue 06:12

    • Using InjectionToken 04:01

    • Providers and useClass 02:48

    • Providers and useFactory 05:41

    • Providers and useExisting 04:11

    • Configurable NgModules 06:27

    • Zones and NgZone 06:26

  • State Management with Rx

    • State Management architecture overview 07:01

    • Creating an Observable Store with Rx 16:44

    • Container components setup 06:16

    • Populating the Store and component subscription 13:39

    • Composing new Observable streams from our Store 04:24

    • Integrating a stateless component 08:46

    • Component outputs back to Service 07:26

    • Updating our Store in a Service 07:00

  • Final Project

    • Setup instructions and code branches Readme

    • Project setup, walkthrough, install 13:49

      Free preview
    • Firebase CLI and initial AoT deploy 11:10

    • AuthModule and child module setup 10:00

    • Login/Register reactive form components 21:23

    • AuthService and AngularFire integration 21:59

    • Reactive Store and AngularFire Observables 13:12

    • Stateless components and logout functionality 16:24

    • HealthModule setup and lazy loading 13:58

    • Implementing AuthGuards for lazy routes 08:06

    • Data layer, initiate Observable streams 20:13

    • Async Pipe "as" syntax and routing 09:36

    • Component architecture and Reactive Forms 25:37

    • Rendering streams into Stateless components 10:04

    • Stateless components and removing items 11:16

    • Route Params and Observable switchMaps 11:05

    • Reactive Form outputs and async / await 21:37

    • Workout module transition 19:43

    • Custom FormControl with ControlValueAccessor 13:20

    • Reactive Form conditionals 09:41

    • Custom Workout / Meal Pipes 10:47

    • Schedule Calendar, Observables, BehaviorSubject 16:35

    • Schedule controls and Date logic 12:51

    • Calendar date toggling 09:18

    • Rendering schedule sections from Observables 28:55

    • Emitting from Stateless components 07:53

    • Schedule assignment and Store 22:40

    • Hooking schedules into Firebase 10:48

    • Project review and deployment 05:56

Elsewhere

Related courses

Related courses

Related courses

Courses are also available separately, dive in below to see each one in depth.

Enterprise licenses

Training for large teams

Looking for a license bigger than 40 users? Get in touch with us with your requirements and we'll give you our best solution for your team to start their Ultimate Angular journey.

Get in touch