Services
Web App Development
Mobile App Development
Tech Stack Migration
Development Process Consulting
Team Training & Mentorship
Process
Work
Events
Resources
About
Team
Careers
Press
Blog
Inquire
ngCourse2
Introduction
License
Why Angular 2?
EcmaScript 6 and TypeScript Features
ES6
Classes
Refresher on 'this'
Arrow Functions
Template Strings
Inheritance
Constants and Block Scoped Variables
...spread and ...rest
Destructuring
Modules
TypeScript
Getting Started With TypeScript
Working With tsc
Typings
Linting
TypeScript Features
TypeScript Classes
Interfaces
Shapes
Type Inference
Decorators
Property Decorators
Class Decorators
Parameter Decorators
The JavaScript Toolchain
Source Control: git
The Command Line
Command Line JavaScript: NodeJS
Back-End Code Sharing and Distribution: npm
Module Loading, Bundling and Build Tasks: Webpack
Chrome
Bootstrapping an Angular 2 Application
Understanding the File Structure
Bootstrapping Providers
Components in Angular 2
Creating Components
Application Structure with Components
Passing Data into a Component
Responding to Component Events
Using Two-Way Data Binding
Accessing Child Components from Template
Projection
Structuring Applications with Components
Using Other Components
Directives
Attribute Directives
NgStyle Directive
NgClass Directive
Structural Directives
NgIf Directive
NgFor Directive
NgSwitch Directives
Using Multiple Structural Directives
Advanced Components
Component Lifecycle
Accessing Other Components
View Encapsulation
ElementRef
Observables
Using Observables
Error Handling
Disposing Subscriptions and Releasing Resources
Observables vs Promises
Using Observables From Other Sources
Observables Array Operations
Combining Streams with flatMap
Cold vs Hot Observables
Summary
Angular 2 Dependency Injection
What is DI?
DI Framework
Angular 2's DI
@Inject() and @Injectable
Injection Beyond Classes
The Injector Tree
Change Detection
Change Detection Strategies in Angular 1 vs Angular 2
How Change Detection Works
Change Detector Classes
Change Detection Strategy: OnPush
Enforcing Immutability
Additional Resources
Advanced Angular
Directives
Creating an Attribute Directive
Creating a Structural Directive
View Containers and Embedded Views
Providing Context Variables to Directives
Immutable.js
What is Immutability?
The Case for Immutability
JavaScript Solutions
Object.assign
Object.freeze
Immutable.js Basics
Immutable.Map
Map.merge
Nested Objects
Deleting Keys
Maps are Iterable
Immutable.List
Performance
Persistent and Transient Data Structures
Official Documentation
Pipes
Using Pipes
Custom Pipes
Stateful Pipes
Forms
Getting Started
Template-Driven Forms
Nesting Form Data
Using Template Model Binding
Validating Template-Driven Forms
FormBuilder
FormBuilder Basics
Validating FormBuilder Forms
FormBuilder Custom Validation
Visual Cues for Users
Modules
What is an Angular 2 Module?
Adding Components, Pipes and Services to a Module
Creating a Feature Module
Directive Duplications
Lazy Loading a Module
Lazy Loading and the Dependency Injection Tree
Shared Modules and Dependency Injection
Sharing the Same Dependency Injection Tree
Routing
Why Routing?
Configuring Routes
Redirecting the Router to Another Route
Defining Links Between Routes
Dynamically Adding Route Components
Using Route Parameters
Defining Child Routes
Controlling Access to or from a Route
Passing Optional Parameters to a Route
Using Auxiliary Routes
Redux and Ngrx
Review of Reducers and Pure Functions
Reducers as State Management
Redux Actions
Configuring your Application to use Redux
Using Redux with Components
Redux and Component Architecture
Getting More From Redux and Ngrx
TDD Testing
The Testing Toolchain
Test Setup
Filename Conventions
Karma Configuration
Typings
Executing Test Scripts
Simple Test
Using Chai
Testing Components
Verifying Methods and Properties
Injecting Dependencies and DOM Changes
Overriding Components for Testing
Testing Asynchronous Actions
Refactoring Hard-to-Test Code
Testing Services
Testing Strategies for Services
Testing HTTP Requests
Using MockBackend
Alternative Mocking Strategy
Testing JSONP and XHR Back-Ends
Executing Tests Asynchronously
Testing Redux
Testing Simple Actions
Testing Complex Actions
Testing Reducers
Afterthoughts
Migrating Angular 1.x Projects to Angular 2
Migration Prep
Upgrading To Angular 1.3+ Style
Migrating To TypeScript
Using Webpack
Choosing an Upgrade Path
Avoiding Total Conversion
Using ng-forward (Angular 1.x Using 2 Style)
Using ng-upgrade (Angular 1.x Coexisting With Angular 2
Bootstrapping ng-upgrade
Downgrading Components
Upgrading Components
Projecting Angular 1 Content into Angular 2 Components
Transcluding Angular 2 Components into Angular 1 Directives
Injecting Across Frameworks
Upgrading Components Strategically
Project Setup
Webpack
Installation and Usage
Loaders
Plugins
Summary
NPM Scripts Integration
Angular CLI
Setup
Creating a New App
Serving the App
Creating Components
Creating Routes
Creating Other Things
Testing
Linting
CLI Command Overview
Adding Third Party Libraries
Integrating an Existing App
Glossary
Other Resources
Powered by
GitBook
Additional Resources
Additional Resources
To learn more about change detection, visit the following links (in order of relevance):
NgConf 2014: Change Detection (Video)
Angular API Docs: ChangeDetectionStrategy
Victor Savkin Blog: Change Detection in Angular 2
Victor Savkin Blog: Two Phases of Angular 2 Applications
Victor Savkin Blog: Angular, Immutability and Encapsulation
results matching "
"
No results matching "
"