Section 1 : Getting Started

Lecture 1 Course Introduction 0:47
Lecture 2 What is Angular_ 2:0
Lecture 3 INTRODUCTION TO BRAINMEASURES PROCTOR SYSTEM Pdf
Lecture 4 Angular vs Angular 2 vs Latest Angular Version 3:49
Lecture 5 CLI Deep Dive & Troubleshooting Text
Lecture 6 Fixing Errors With New Angular Projects Text
Lecture 7 Project Setup and First App 8:45
Lecture 8 Editing the First App 10:5
Lecture 9 The Course Structure 4:0
Lecture 10 How to get the Most out of the Course 2:26
Lecture 11 What is TypeScript_ 2:9
Lecture 12 Optional_ TypeScript Quick Introduction Text
Lecture 13 A Basic Project Setup using Bootstrap for Styling 4:27
Lecture 14 About the Course Code _ Code Snapshots Text

Section 2 : The Basics

Lecture 15 Module Introduction 0:57
Lecture 16 How an Angular App gets Loaded and Started 7:11
Lecture 17 Components are Important! 3:9
Lecture 18 Creating a New Component 6:51
Lecture 19 Understanding the Role of AppModule and Component Declaration 5:15
Lecture 20 Using Custom Components 1:12
Lecture 21 Creating Components with the CLI & Nesting Components 3:51
Lecture 22 Working with Component Templates 3:9
Lecture 23 Working with Component Styles 4:2
Lecture 24 Fully Understanding the Component Selector 3:50
Lecture 25 [OPTIONAL] Assignment Solution 6:43
Lecture 26 What is Databinding_ 2:50
Lecture 27 String Interpolation 5:19
Lecture 28 Property Binding 6:34
Lecture 29 Property Binding vs String Interpolation 3:8
Lecture 30 Event Binding 4:9
Lecture 31 Bindable Properties and Events Text
Lecture 32 Passing and Using Data with Event Binding
Lecture 33 Important_ FormsModule is Required for Two-Way-Binding! Text
Lecture 34 Two-Way-Databinding 2:48
Lecture 35 Combining all Forms of Databinding 1:47
Lecture 36 mp4 5:12
Lecture 37 Understanding Directives 2:17
Lecture 38 Using ngIf to Output Data Conditionally 3:53
Lecture 39 Enhancing ngIf with an Else Condition 2:46
Lecture 40 Styling Elements Dynamically with ngStyle
Lecture 41 Applying CSS Classes Dynamically with ngClass 2:54
Lecture 42 Outputting Lists with ngFor 3:44
Lecture 43 About Proctor Testing Pdf
Lecture 44 Getting the Index when using ngFor 2:53

Section 3 : Course Project - The Basics

Lecture 45 Project Introduction 1:5
Lecture 46 Planning the App 5:34
Lecture 47 Installing Bootstrap Correctly Text
Lecture 48 Setting up the Application 4:31
Lecture 49 Creating the Components 9:33
Lecture 50 Using the Components 3:16
Lecture 51 Adding a Navigation Bar 5:9
Lecture 52 Alternative Non-Collapsable Navigation Bar Text
Lecture 53 Creating a _Recipe_ Model 4:33
Lecture 54 Adding Content to the Recipes Components 7:41
Lecture 55 Outputting a List of Recipes with ngFor 4:37
Lecture 56 Displaying Recipe Details 5:53
Lecture 57 Working on the ShoppingListComponent 1:50
Lecture 58 Creating an _Ingredient_ Model 2:36
Lecture 59 Creating and Outputting the Shopping List 2:27
Lecture 60 Adding a Shopping List Edit Section 3:28
Lecture 61 Wrap Up & Next Steps 0:54

Section 4 : Debugging

Lecture 62 Understanding Angular Error Messages 4:36
Lecture 63 Debugging Code in the Browser Using Sourcemaps 5:32

Section 5 : Components & Databinding Deep Dive

Lecture 64 Module Introduction 0:36
Lecture 65 Splitting Apps into Components 5:56
Lecture 66 Property & Event Binding Overview 1:44
Lecture 67 Binding to Custom Properties 5:44
Lecture 68 Assigning an Alias to Custom Properties 2:0
Lecture 69 Binding to Custom Events 9:6
Lecture 70 Assigning an Alias to Custom Events 0:57
Lecture 71 Custom Property and Event Binding Summary 2:2
Lecture 72 Understanding View Encapsulation 5:0
Lecture 73 More on View Encapsulation 2:43
Lecture 74 Using Local References in Templates 4:36
Lecture 75 @ViewChild() in Angular 8+ Text
Lecture 76 Getting Access to the Template & DOM with @ViewChild 4:36
Lecture 77 Projecting Content into Components with ng-content 3:22
Lecture 78 Understanding the Component Lifecycle 4:54
Lecture 79 Seeing Lifecycle Hooks in Action 11:55
Lecture 80 Lifecycle Hooks and Template Access 2:33
Lecture 81 About Proctor Testing Pdf
Lecture 82 Getting Access to ng-content with @ContentChild 3:1
Lecture 83 Wrap Up 0:50
Lecture 84 [OPTIONAL] Assignment Solution 12:22

Section 6 : Course Project - Components & Databinding

Lecture 85 Introduction 0:50
Lecture 86 Adding Navigation with Event Binding and ngIf 7:32
Lecture 87 Passing Recipe Data with Property Binding 4:44
Lecture 88 Passing Data with Event and Property Binding (Combined) 10:32
Lecture 89 Make sure you have FormsModule added! Text
Lecture 90 Allowing the User to Add Ingredients to the Shopping List 7:23

Section 7 : Directives Deep Dive

Lecture 91 Module Introduction 1:23
Lecture 92 ngFor and ngIf Recap 3:36
Lecture 93 ngClass and ngStyle Recap 2:57
Lecture 94 Creating a Basic Attribute Directive 6:42
Lecture 95 Using the Renderer to build a Better Attribute Directive 7:5
Lecture 96 More about the Renderer
Lecture 97 Using HostListener to Listen to Host Events 3:0
Lecture 98 Using HostBinding to Bind to Host Properties 3:17
Lecture 99 Binding to Directive Properties 6:44
Lecture 100 What Happens behind the Scenes on Structural Directives 3:5
Lecture 101 Building a Structural Directive 6:14
Lecture 102 Understanding ngSwitch 2:49

Section 8 : Course Project - Directives

Lecture 103 Building and Using a Dropdown Directive 6:26
Lecture 104 Closing the Dropdown From Anywhere Text

Section 9 : Using Services & Dependency Injection

Lecture 105 Module Introduction 1:40
Lecture 106 Why would you Need Services_ 2:4
Lecture 107 Creating a Logging Service 3:33
Lecture 108 Injecting the Logging Service into Components 6:22
Lecture 109 Creating a Data Service 6:41
Lecture 110 Understanding the Hierarchical Injector 2:41
Lecture 111 How many Instances of Service Should It Be_ 2:13
Lecture 112 Injecting Services into Services 5:13
Lecture 113 Using Services for Cross-Component Communication 4:7
Lecture 114 Services in Angular 6+
Lecture 115 [OPTIONAL] Assignment Solution 9:37

Section 10 : Course Project - Services & Dependency Injection

Lecture 116 Introduction 1:24
Lecture 117 Setting up the Services 1:15
Lecture 118 Managing Recipes in a Recipe Service 4:8
Lecture 119 Using a Service for Cross-Component Communication 5:7
Lecture 120 Adding the Shopping List Service 5:4
Lecture 121 Using Services for Pushing Data from A to B 3:9
Lecture 122 Adding Ingredients to Recipes 3:42
Lecture 123 Passing Ingredients from Recipes to the Shopping List (via a Service) 7:4

Section 11 : Changing Pages with Routing

Lecture 124 Module Introduction 1:27
Lecture 125 Why do we need a Router_ 1:16
Lecture 126 Understanding the Example Project Text
Lecture 127 Setting up and Loading Routes 8:2
Lecture 128 Navigating with Router Links 5:18
Lecture 129 Understanding Navigation Paths 4:54
Lecture 130 Styling Active Router Links 5:2
Lecture 131 Navigating Programmatically 3:28
Lecture 132 Using Relative Paths in Programmatic Navigation 5:10
Lecture 133 Passing Parameters to Routes 3:11
Lecture 134 Fetching Route Parameters 4:1
Lecture 135 Fetching Route Parameters Reactively 7:25
Lecture 136 An Important Note about Route Observables 2:43
Lecture 137 Passing Query Parameters and Fragments 5:53
Lecture 138 Retrieving Query Parameters and Fragments 3:16
Lecture 139 Practicing and some Common Gotchas 6:8
Lecture 140 Setting up Child (Nested) Routes 4:28
Lecture 141 Using Query Parameters - Practice 5:37
Lecture 142 Configuring the Handling of Query Parameters 1:50
Lecture 143 Redirecting and Wildcard Routes 4:36
Lecture 144 Important_ Redirection Path Matching Text
Lecture 145 Outsourcing the Route Configuration 4:40
Lecture 146 An Introduction to Guards 1:46
Lecture 147 Protecting Routes with canActivate 8:55
Lecture 148 Protecting Child (Nested) Routes with canActivateChild 2:52
Lecture 149 Using a Fake Auth Service 1:43
Lecture 150 Controlling Navigation with canDeactivate 12:28
Lecture 151 Passing Static Data to a Route 5:56
Lecture 152 Resolving Dynamic Data with the resolve Guard 9:53
Lecture 153 Understanding Location Strategies 4:44
Lecture 154 Wrap Up 0:51

Section 12 : Course Project - Routing

Lecture 155 Planning the General Structure 1:36
Lecture 156 Setting Up Routes 7:58
Lecture 157 Adding Navigation to the App 1:42
Lecture 158 Marking Active Routes 1:31
Lecture 159 Fixing Page Reload Issues 2:51
Lecture 160 Child Routes_ Challenge 1:54
Lecture 161 Adding Child Routing Together 4:22
Lecture 162 Configuring Route Parameters 6:22
Lecture 163 Passing Dynamic Parameters to Links 3:1
Lecture 164 Styling Active Recipe Items 1:15
Lecture 165 Adding Editing Routes 3:44
Lecture 166 Retrieving Route Parameters 3:19
Lecture 167 Programmatic Navigation to the Edit Page 4:46
Lecture 168 One Note about Route Observables 0:52
Lecture 169 Project Cleanup Text

Section 13 : Understanding Observables

Lecture 170 Module Introduction 4:26
Lecture 171 Analyzing Angular Observables 2:16
Lecture 172 Getting Closer to the Core of Observables 6:51
Lecture 173 Building a Custom Observable 4:47
Lecture 174 Errors & Completion 6:40
Lecture 175 Observables & You! 1:55
Lecture 176 Understanding Operators 8:3
Lecture 177 Subjects
Lecture 178 Wrap Up 1:15
Lecture 179 Useful Resources Text

Section 14 : Course Project - Observables

Lecture 180 Improving the Reactive Service with Observables (Subjects) 6:4
Lecture 181 Changed the Subscription Name Text

Section 15 : Handling Forms in Angular Apps

Lecture 182 Module Introduction 1:19
Lecture 183 Why do we Need Angular's Help_ 2:22
Lecture 184 Template-Driven (TD) vs Reactive Approach 1:16
Lecture 185 An Example Form 1:33
Lecture 186 TD_ Creating the Form and Registering the Controls 5:42
Lecture 187 TD_ Submitting and Using the Form 6:16
Lecture 188 TD_ Understanding Form State 2:29
Lecture 189 TD_ Accessing the Form with @ViewChild 3:4
Lecture 190 TD_ Adding Validation to check User Input 4:14
Lecture 191 Built-in Validators & Using HTML5 Validation Text
Lecture 192 TD_ Using the Form State 4:27
Lecture 193 TD_ Outputting Validation Error Messages 2:24
Lecture 194 TD_ Set Default Values with ngModel Property Binding 2:16
Lecture 195 TD_ Using ngModel with Two-Way-Binding 2:49
Lecture 196 TD_ Grouping Form Controls 3:30
Lecture 197 TD_ Handling Radio Buttons 3:27
Lecture 198 TD_ Setting and Patching Form Values 4:42
Lecture 199 TD_ Using Form Data 4:44
Lecture 200 TD_ Resetting Forms 1:48
Lecture 201 Introduction to the Reactive Approach 0:40
Lecture 202 Reactive_ Setup 2:26
Lecture 203 Reactive_ Creating a Form in Code 4:7
Lecture 204 Reactive_ Syncing HTML and Form 3:58
Lecture 205 Reactive_ Submitting the Form 2:16
Lecture 206 Reactive_ Adding Validation 2:51
Lecture 207 Reactive_ Getting Access to Controls 3:47
Lecture 208 Reactive_ Grouping Controls 3:47
Lecture 209 Fixing a Bug Text
Lecture 210 Reactive_ Arrays of Form Controls (FormArray) 7:31
Lecture 211 Reactive_ Creating Custom Validators 6:11
Lecture 212 Reactive_ Using Error Codes 3:20
Lecture 213 Reactive_ Creating a Custom Async Validator 4:38
Lecture 214 Reactive_ Reacting to Status or Value Changes 2:11
Lecture 215 Reactive_ Setting and Patching Values 2:10
Lecture 216 [OPTIONAL] Assignment Solution 13:49

Section 16 : Course Project - Forms

Lecture 217 Introduction 1:0
Lecture 218 TD_ Adding the Shopping List Form 3:43
Lecture 219 Adding Validation to the Form 2:22
Lecture 220 Allowing the Selection of Items in the List 4:25
Lecture 221 Loading the Shopping List Items into the Form 3:2
Lecture 222 Updating existing Items 3:16
Lecture 223 Resetting the Form 2:35
Lecture 224 Allowing the the User to Clear (Cancel) the Form 1:16
Lecture 225 Allowing the Deletion of Shopping List Items 2:53
Lecture 226 Creating the Template for the (Reactive) Recipe Edit Form 5:0
Lecture 227 Creating the Form For Editing Recipes 5:6
Lecture 228 Syncing HTML with the Form 3:52
Lecture 229 Fixing a Bug Text
Lecture 230 Adding Ingredient Controls to a Form Array 5:39
Lecture 231 Adding new Ingredient Controls 3:39
Lecture 232 Validating User Input 5:10
Lecture 233 Submitting the Recipe Edit Form 7:31
Lecture 234 Adding a Delete and Clear (Cancel) Functionality 4:47
Lecture 235 Redirecting the User (after Deleting a Recipe) 1:47
Lecture 236 Adding an Image Preview 1:48
Lecture 237 Providing the Recipe Service Correctly 1:59
Lecture 238 Deleting Ingredients and Some Finishing Touches 3:34
Lecture 239 Deleting all Items in a FormArray Text

Section 17 : Using Pipes to Transform Output

Lecture 240 Introduction & Why Pipes are Useful 2:2
Lecture 241 Using Pipes 3:28
Lecture 242 Parametrizing Pipes 2:11
Lecture 243 Where to learn more about Pipes 1:57
Lecture 244 Chaining Multiple Pipes 2:20
Lecture 245 Creating a Custom Pipe 6:42
Lecture 246 Parametrizing a Custom Pipe 2:36
Lecture 247 Example_ Creating a Filter Pipe 7:2
Lecture 248 Pure and Impure Pipes (or_ How to _fix_ the Filter Pipe) 4:46
Lecture 249 Understanding the _async_ Pipe 4:4

Section 18 : Making Http Requests

Lecture 250 A New IDE 0:44
Lecture 251 Module Introduction 1:6
Lecture 252 How Does Angular Interact With Backends_ 3:10
Lecture 253 The Anatomy of a Http Request 2:27
Lecture 254 Backend (Firebase) Setup 2:35
Lecture 255 http-01-start Zip
Lecture 255 Sending a POST Request 10:11
Lecture 256 GETting Data 2:57
Lecture 257 Using RxJS Operators to Transform Response Data 3:59
Lecture 258 Using Types with the HttpClient 5:7
Lecture 259 Outputting Posts 2:15
Lecture 260 Showing a Loading Indicator 2:4
Lecture 261 Using a Service for Http Requests 6:38
Lecture 262 Services & Components Working Together 3:28
Lecture 263 Sending a DELETE Request 3:27
Lecture 264 Handling Errors 6:38
Lecture 265 Using Subjects for Error Handling 2:39
Lecture 266 Using the catchError Operator 2:13
Lecture 267 Error Handling & UX 2:7
Lecture 268 Setting Headers 3:18
Lecture 269 Adding Query Params 4:1
Lecture 270 Observing Different Types of Responses 7:33
Lecture 271 Changing the Response Body Type 3:16
Lecture 272 Introducing Interceptors 7:24
Lecture 273 Manipulating Request Objects 2:33
Lecture 274 Response Interceptors 2:46
Lecture 275 Multiple Interceptors 4:52
Lecture 276 Wrap Up 1:58
Lecture 277 Useful Resources Text

Section 19 : Course Project - Http

Lecture 278 Module Introduction 0:55
Lecture 279 Backend (Firebase) Setup 2:4
Lecture 280 Setting Up the DataStorage Service 5:33
Lecture 281 Storing Recipes 6:39
Lecture 282 Fetching Recipes 5:39
Lecture 283 Transforming Response Data 4:17
Lecture 284 Resolving Data Before Loading 7:31
Lecture 285 Fixing a Bug with the Resolver 1:43

Section 20 : Authentication & Route Protection in Angular

Lecture 286 Module Introduction 0:53
Lecture 287 How Authentication Works 5:1
Lecture 288 Adding the Auth Page 6:44
Lecture 289 Switching Between Auth Modes 4:2
Lecture 290 Handling Form Input 3:44
Lecture 291 Preparing the Backend 3:15
Lecture 292 Make sure you got Recipes in your backend! Text
Lecture 293 Preparing the Signup Request 8:24
Lecture 294 Sending the Signup Request 4:36
Lecture 295 Adding a Loading Spinner & Error Handling Logic 6:34
Lecture 296 Improving Error Handling 5:39
Lecture 297 Sending Login Requests 6:0
Lecture 298 Login Error Handling 4:29
Lecture 299 Creating & Storing the User Data 10:17
Lecture 300 Reflecting the Auth State in the UI 9:42
Lecture 301 Adding the Token to Outgoing Requests 10:15
Lecture 302 Attaching the Token with an Interceptor 8:48
Lecture 303 Adding Logout 3:19
Lecture 304 Adding Auto-Login 9:55
Lecture 305 Adding Auto-Logout 7:40
Lecture 306 Adding an Auth Guard 10:56
Lecture 307 Wrap Up 1:56
Lecture 308 Useful Resources & Links Text

Section 21 : Dynamic Components

Lecture 309 Module Introduction 1:10
Lecture 310 Adding an Alert Modal Component 7:33
Lecture 311 Understanding the Different Approaches 2:29
Lecture 312 Using ngIf 3:5
Lecture 313 Preparing Programmatic Creation 8:28
Lecture 314 Creating a Component Programmatically 4:46
Lecture 315 Understanding entryComponents 5:6
Lecture 316 Data Binding & Event Binding 5:6
Lecture 317 Wrap Up 1:25
Lecture 318 Useful Resources & Links Text

Section 22 : Angular Modules & Optimizing Angular Apps

Lecture 319 Module Introduction 0:41
Lecture 320 What are Modules_ 2:26
Lecture 321 Analyzing the AppModule 6:25
Lecture 322 Getting Started with Feature Modules 9:0
Lecture 323 Splitting Modules Correctly 4:10
Lecture 324 Adding Routes to Feature Modules 4:35
Lecture 325 Component Declarations 1:58
Lecture 326 The ShoppingList Feature Module 4:27
Lecture 327 Understanding Shared Modules 8:10
Lecture 328 Understanding the Core Module 5:49
Lecture 329 Adding an Auth Feature Module 4:22
Lecture 330 Understanding Lazy Loading 2:52
Lecture 331 Implementing Lazy Loading 12:20
Lecture 332 More Lazy Loading 3:2
Lecture 333 Preloading Lazy-Loaded Code 3:39
Lecture 334 Modules & Services 5:47
Lecture 335 Loading Services Differently 8:24
Lecture 336 Ahead-of-Time Compilation 9:50
Lecture 337 Wrap Up 0:50
Lecture 338 Useful Resources & Links Text

Section 23 : Deploying an Angular App

Lecture 339 Module Introduction 0:53
Lecture 340 Deployment Preparation & Steps 3:19
Lecture 341 Using Environment Variables 4:44
Lecture 342 Deployment Example_ Firebase Hosting 9:2
Lecture 343 Server Routing vs Browser Routing Text

Section 24 : Bonus_ Working with NgRx in our Project

Lecture 344 Module Introduction 0:46
Lecture 345 What is Application State_ 9:8
Lecture 346 What is NgRx_ 6:56
Lecture 347 Getting Started with Reducers 6:44
Lecture 348 Adding Logic to the Reducer 5:48
Lecture 349 Understanding & Adding Actions 6:16
Lecture 350 Setting Up the NgRx Store 4:49
Lecture 351 Selecting State 8:51
Lecture 352 Dispatching Actions 7:10
Lecture 353 Multiple Actions 9:38
Lecture 354 Preparing Update & Delete Actions
Lecture 355 Updating & Deleting Ingredients 11:0
Lecture 356 Expanding the State 9:18
Lecture 357 Managing More State via NgRx 9:53
Lecture 358 Removing Redundant Component State Management 3:32
Lecture 359 First Summary & Clean Up 5:25
Lecture 360 One Root State 11:40
Lecture 361 Setting Up Auth Reducer & Actions 8:25
Lecture 362 Dispatching Auth Actions 5:53
Lecture 363 Auth Finished (For Now 6:43
Lecture 364 And Important Note on Actions 6:24
Lecture 365 Exploring NgRx Effects 3:39
Lecture 366 Defining the First Effect 5:20
Lecture 367 Effects & Error Handling 8:57
Lecture 368 Login via NgRx Effects 9:9
Lecture 369 Managing UI State in NgRx 7:31
Lecture 370 Finishing the Login Effect 7:11
Lecture 371 Preparing Other Auth Actions 4:10
Lecture 372 Adding Signup 6:17
Lecture 373 Further Auth Effects 6:14
Lecture 374 Adding Auto-Login with NgRx 8:16
Lecture 375 Adding Auto-Logout 6:31
Lecture 376 Finishing the Auth Effects 2:29
Lecture 377 Using the Store Devtools 6:20
Lecture 378 The Router Store 2:12
Lecture 379 Getting Started with NgRx for Recipes 11:3
Lecture 380 Fetching Recipe Detail Data 9:15
Lecture 381 Fetching Recipes & Using the Resolver 12:1
Lecture 382 Fixing the Auth Redirect 2:10
Lecture 383 Update, Delete and Add Recipes 15:11
Lecture 384 Storing Recipes via Effects 5:52
Lecture 385 Cleanup Work 1:58
Lecture 386 Wrap Up 2:13
Lecture 387 Alternative NgRx Syntax Text
Lecture 388 Useful Resources & Links Text

Section 25 : Bonus_ Angular Universal

Lecture 389 Module Introduction 3:4
Lecture 390 Angular Universal & ModuleMapLoader Text
Lecture 391 Adding Angular Universal 10:1
Lecture 392 Adding Angular Universal with NestJS 6:18
Lecture 393 Deploying Universal Apps Text
Lecture 394 Important_ Remaining Lectures Text
Lecture 395 Module Introduction 1:41
Lecture 396 Getting Started with Angular Universal 1:31
Lecture 397 Working on the App Module 4:2
Lecture 398 Adding a Server-Side Build Workflow 4:56
Lecture 399 Adding a NodeJS Server 8:26
Lecture 400 Pre-Rendering the App on the Server 4:11
Lecture 401 Next Steps 1:39
Lecture 402 Angular Universal Gotchas Text

Section 26 : Angular Animations

Lecture 403 Making Animations Work with Angular 4+ Text
Lecture 404 Introduction 1:3
Lecture 405 Setting up the Starting Project 0:53
Lecture 406 Animations Triggers and State 7:12
Lecture 407 Switching between States 2:4
Lecture 408 Transitions 1:55
Lecture 409 Advanced Transitions 5:22
Lecture 410 Transition Phases 3:57
Lecture 411 The _void_ State 6:11
Lecture 412 Using Keyframes for Animations 5:32
Lecture 413 Grouping Transitions
Lecture 414 Using Animation Callbacks 2:38

Section 27 : Adding Offline Capabilities with Service Workers

Lecture 415 Module Introduction 1:40
Lecture 416 Adding Service Workers 12:41
Lecture 417 Caching Assets for Offline Use 5:28
Lecture 418 Caching Dynamic Assets & URLs 7:3
Lecture 419 Further Links & Resources Text

Section 28 : A Basic Introduction to Unit Testing in Angular Apps

Lecture 420 About this Section Text
Lecture 421 Introduction 1:19
Lecture 422 Why Unit Tests_ 2:13
Lecture 423 Analyzing the Testing Setup (as created by the CLI) 2:13
Lecture 424 Running Tests (with the CLI) 2:0
Lecture 425 Adding a Component and some fitting Tests 6:15
Lecture 426 Testing Dependencies_ Components and Services 6:56
Lecture 427 Simulating Async Tasks 9:42
Lecture 428 Using _fakeAsync_ and _tick_ 2:14
Lecture 429 Isolated vs Non-Isolated Tests 6:10
Lecture 430 Further Resources & Where to Go Next Text

Section 29 : Angular as a Platform & Closer Look at the CLI

Lecture 431 Module Introduction 1:44
Lecture 432 A Closer Look at _ng new_ 5:18
Lecture 433 IDE & Project Setup 2:31
Lecture 434 Understanding the Config Files 9:2
Lecture 435 Important CLI Commands 5:26
Lecture 436 The _angular 11:18
Lecture 437 Angular Schematics - An Introduction 1:42
Lecture 438 The _ng add_ Command 4:31
Lecture 439 Using Custom _ng generate_ Schematics 3:5
Lecture 440 Smooth Updating of Projects with _ng update_ 2:14
Lecture 441 Simplified Deployment with _ng deploy_ 5:47
Lecture 442 Understanding _Differential Loading_ 5:11
Lecture 443 Managing Multiple Projects in One Folder 4:36
Lecture 444 Angular Libraries - An Introduction 2:52
Lecture 445 Wrap Up 1:27

Section 30 : Angular Changes & New Features

Lecture 446 A First Look At Angular Elements 15:34

Section 31 : Course Roundup

Lecture 447 Course Roundup 1:33
Lecture 448 About Certification Pdf

Section 32 : Bonus_ TypeScript Introduction (for Angular 2 Usage)

Lecture 449 Module Introduction 1:15
Lecture 450 What & Why_ 6:32
Lecture 451 Installing & Using TypeScript 5:41
Lecture 452 Base Types & Primitives 3:55
Lecture 453 Array & Object Types 5:34
Lecture 454 Type Inference 2:47
Lecture 455 Working with Union Types 2:48
Lecture 456 Assigning Type Aliases 2:43
Lecture 457 Diving into Functions & Function Types 5:12
Lecture 458 Understanding Generics 7:20
Lecture 459 Classes & TypeScript 7:58
Lecture 460 Working with Interfaces 5:37
Lecture 461 Configuring the TypeScript Compiler 2:29
Lecture 462 Module Resources Text