SlideShare a Scribd company logo
Angular 2:What’s new?
Jonas Bandi, IvoryCode GmbH
Once upon a time …
… the world was peacefully creating applications
with AngularJS …
…but change was lurking in the maze of a mailing list …
https://groups.google.com/forum/#!search/misko$20Hevery$20may$2022$202013/polymer-dev/4RSYaKmbtEk/uYnY3900wpIJ
… then the threat became real …
ng-europe, October 2014
https://www.youtube.com/watch?v=gNmWybAyBHI
https://twitter.com/kevindente/status/527500820603232257
Forget anything you know about AngularJS?
About me …
Jonas Bandi

jonas.bandi@ivorycode.com
Twitter: @jbandi
- Freelancer: www.ivorycode.com
- Dozent an der Berner Fachhochschule seit 2007
- Trainer bei Digicomp für AngularJS und Angular 2
- In-House Kurse & Coachings für Web-Technologien im Enterprise (UBS,
Postfinance, Mobiliar, BIT, SBB ... )
AngularJS is a powerful Framework …
… but it is old!
1995
2006
2009
2011
2013 20162012
AngularJS
Bootstrap
LoDash React Angular 2
https://en.wikipedia.org/wiki/Usage_share_of_web_browsers
The web has changed since 2009…
2015
Angular 2 is a new implementation of the
concepts behind AngularJS …
… for the modern web.
… but Angular 2 is not an update to AngularJS.
Angular 2 is built upon the
modern web:
2015
- web workers
- shadow dom
Angular 2 is built for the
modern web:
• mobile browsers
• modern browsers
• server-side rendering
Angular 2 improves over AngularJS:
• faster
• easier to use & learn
• built on proven best practices (i.e. ui-
components, unidirectional data flow …)
The core concepts of Angular 2 are clean and
easy to learn …
Angular Key Concepts
controllers components
data-binding data-binding / data-flow
directives directives
services
dependency injection
services
dependency injection
components (ng 1.5) components
AngularJS Angular 2
Angular Key Concepts
controllers
components
components (ng 1.5)
AngularJS Angular 2
ES2015 class
JavaScript Function
DDO
ToDo-App Component
New-ToDo Component
ToDo-List Component
Angular 2 Components
Template Class Metadata
+ +
= Component
@Component
Components are the main building-block of Angular 2.
A Simple Component
import	{Component}	from	'@angular/core';	
@Component({	
				selector:	'my-app',	
				template:	'<h1>My	First	Angular	2	App</h1>'	
})	
export	class	AppComponent	{	}
var app = angular.module('todoApp');

app.controller('todoController',
ToDoController);



ToDoController.$inject = ['ToDoService'];

function ToDoController(todoService) {

var ctrl = this;



ctrl.newToDo = new ToDoItem();

ctrl.todos = todoService.getToDos();

...
@Component({

selector: 'td-todo-app',

template: require('./app.component.html'),

directives: [NewTodo, ToDoList],

providers: [ToDoService]

})

export class TodoApp implements OnInit {



todos: Array<ToDo> = [];



constructor(private todoService:ToDoService){}



ngOnInit() {

this.todos = this.todoService.loadToDos();

}
...
AngularJS Angular 2
Controller -> Component
var app = angular.module('todoApp');



app.component('TodoApp', {

templateUrl: 'todo-app.html',

controller: TodoAppComponent

});



ToDoController.$inject = ['ToDoService'];

function TodoAppComponent(todoService) {

var ctrl = this;



ctrl.newToDo = new ToDoItem();

ctrl.todos = todoService.getToDos();



...
@Component({

selector: 'td-todo-app',

template: require('./app.component.html'),

directives: [NewTodo, ToDoList],

providers: [ToDoService]

})

export class TodoApp implements OnInit {



todos: Array<ToDo> = [];



constructor(private todoService:ToDoService){}



ngOnInit() {

this.todos = this.todoService.loadToDos();

}
...
AngularJS Angular 2
Component(ng 1.5) -> Component
Directives & Components
A directive is a construct, that is embedded into html and has
a special meaning for the framework.
Directives
Components Structural

Directives
Attribute

Directives
Component Directive
is a
composes
Angular Key Concepts
directives directives
AngularJS Angular 2
many directives
from ng1 are not
needed in ng2
templates
a lot of directives 

(i.e	ng-click,	ng-focus,	
ng-blur,	ng-keyup	…)
AngularJS vs.Angular 2: Directives
The generic binding capabilities of Angular 2 makes many directives from AngularJS obsolete.
https://docs.angularjs.org/api/ng/directive https://angular.io/docs/ts/latest/api/
<div	ng-style={color:'red'}>	
<img	ng-src="{{ctrl.path}}">	
<a	ng-href=“{{ctrl.link}}">
<div	[style.color]="color">	
<img	[src]="path">	
<a	[href]="link">
ng-click="savePerson(person)"	
ng-focus="updateSummary()"	
ng-blur="commit()"	
ng-keyup="updateCalculation()"
(click)="savePerson(person)"	
(focus)="updateSummary()"	
(blur)="commit()"	
(keyup)="updateCalculation()"
AngularJS Angular 2
Structural Directives
Use html as a template
<ul class="todo-list" >

<li ng-repeat="todo in ctrl.todos">

{{todo.title}}

<button class="remove-button"
ng-click="ctrl.removeToDo(todo)">

x

</button>

</li>

</ul>
<ul class="todo-list" >

<li *ngFor="let todo of todos">

{{todo.title}}

<button class="remove-button"
(click)="removeToDo(todo)">

x

</button>

</li>

</ul>

AngularJS Angular 2
ng-repeat,	ng-if *ngFor,	*ngIf
Angular Key Concepts
data-binding data-binding / data-flow
AngularJS Angular 2
interpolation &
2-way databinding
interpolation & 2-way databinding
uni-directional data-flow$scope
generic property & event binding
Databinding
Interpolation
Property Binding
Event Binding
Two Way Binding
{{value}}
[property]="value"
(event)="handler"
[(ngModel)]="value"
DOM
(Template)
component
Nested Components: Uni-Directional Data-Flow
State should be explicitly owned by a component.
• A parent component passes
state to children
• Children should not edit
state of their parent
• Children “notify” parents
(events, actions …)
Child
Component
Child Component
Parent Component
state
properties 

go in
logic
eventscomeout
update
@Input()
@Output()
Angular formalises unidirectional data-flow with @Input() and @Output() properties.
Angular Key Concepts
services services
AngularJS Angular 2
a function registered
as factory, service or
provider
ES2015 class
Services
Objects that perform a specific job.
Instantiated by Angular.
var app = angular.module('todoApp');

app.factory('toDoService', toDoService);



function toDoService() {

'use strict';



return {

getToDos: getToDos,

addToDo: addToDo,

removeToDo: removeToDo

};
...
@Injectable()

export class ToDoService {



loadToDos():Array<ToDo> {

var loadedToDos =
JSON.parse(
localStorage
.getItem(TODOS_KEY)
);

return loadedToDos || [];

}

...
AngularJS Angular 2
Angular Key Concepts
dependency injection dependency injection
AngularJS Angular 2
DI based on naming
DI based on types
(usingTypeScript and
Decorators)
Singletons Hierarchical DI
Dependency Injection
var app = angular.module('todoApp');

app.factory('toDoService', toDoService);



function toDoService() {
...
}
@Injectable()

export class ToDoService {

...
}
AngularJS Angular 2
@Component({

selector: 'td-todo-app',

template: require('./app.component.html'),

directives: [NewTodo, ToDoList],

providers: [ToDoService]

})

export class TodoApp implements OnInit {

constructor(private todoService:ToDoService){}
...
}
app.controller('todoController',
ToDoController);



ToDoController.$inject = ['toDoService'];

function ToDoController(todoService) {
...
}
registration:
injection:
Angular Key Concepts
controllers components
data-binding data-binding / data-flow
directives directives
services
dependency injection
services
dependency injection
components (ng 1.5) components
AngularJS Angular 2
Many key concepts remain the same.
But the implementation has changed.
There is more …
filters Pipes
AngularJS Angular 2
http with Promises http with RxJs
(Promises still supported)
Routing
(template centered)
Hierarchical
Component Router
… …
The core concepts of Angular 2 are clean and
easy to learn …
… but setting up a full Angular project can be
quite complicated today.
Angular JS
AngularJS: an effective tool but not elegant …
SystemJS
2015
webpack
jspm
Angular 2
Angular is distributed through NPM
Node Package Manger
To get Angular on your development machine, you have to
install Node.JS.
https://www.npmjs.com/
2015
ES5
Multi-Language
Language Choices
ES5
2015
weakly typed strongly typed
(optional)
no com-

pilation compilation
Angular for ES2015 &TS relies on ES2015 modules.

There is no support for ES2015 modules in browsers today.

A module-system is mandatory.
VS.
SystemJS
To pack or (not) to pack?
Build Toolchain
Typically you need a
front-end build for
transpilation and module
bundling.
Angular 2 aspires to be a platform
progressive web-apps for mobile

(web workers, cache, push, offline)
https://mobile.angular.io/
classic web-apps for
desktops
installed mobile apps
(hybrid)
installed mobile apps
(native integrations)
server side rendering
https://universal.angular.io/
installed desktop apps
https://github.com/NathanWalker/angular2-seed-advanced
dev tooling
https://cli.angular.io/
Is Angular 2 ready for production?
October 2014: Initial announcement of Angular 2
December 2015: Angular 2 released as beta
May 2016: Angular 2 Release Candidate 0
June 2016: Angular 2 Release Candidate 2
What is missing:
- Router (!)
- Offline Compilation & BuildToolchain
- internationalization
- 3rd Party Ecosystem
https://www.reddit.com/r/angularjs/comments/4i2n3k/angular_2_was_never_ready_for_a_release_candidate/
The Router Debacle
http://blog.jonasbandi.net/2016/06/ng2-router.html
- Dez 2014: New Router announced for
Angular 1.4 and Angular 2
- June 2015: New Router is deprecated
- Angular 2 beta is developed with the
Component router
- March 2016: Component Router is
released for Angular 1.5
- May 2016: Component Router is
deprecated. Router 2.0 is part of
Angular 2 RC1
- June 2016: Router 2.0 is deprecated,
Router 3.0 is announced
Jonas Bandi

jonas.bandi@ivorycode.com
Twitter: @jbandi
Tomorrow: DevDay Workshop - Hands On Angular 2
Digicomp Course: Front-End-Entwicklung mit Angular 2, JavaScript und
TypeScript
Questions?

More Related Content

What's hot

Angular 2 overview
Angular 2 overviewAngular 2 overview
Angular 2 overview
Jesse Warden
 
Angular 2 - Core Concepts
Angular 2 - Core ConceptsAngular 2 - Core Concepts
Angular 2 - Core Concepts
Fabio Biondi
 
Angular2 intro
Angular2 introAngular2 intro
Angular2 intro
Shawn McKay
 
Angular 2
Angular 2Angular 2
Tech Webinar: Angular 2, Introduction to a new framework
Tech Webinar: Angular 2, Introduction to a new frameworkTech Webinar: Angular 2, Introduction to a new framework
Tech Webinar: Angular 2, Introduction to a new framework
Codemotion
 
What’s new in angular 2
What’s new in angular 2What’s new in angular 2
What’s new in angular 2Ran Wahle
 
Angular 2 - The Next Framework
Angular 2 - The Next FrameworkAngular 2 - The Next Framework
Angular 2 - The Next Framework
Commit University
 
Adventures with Angular 2
Adventures with Angular 2Adventures with Angular 2
Adventures with Angular 2
Dragos Ionita
 
Introduction to Angular 2
Introduction to Angular 2Introduction to Angular 2
Introduction to Angular 2
Naveen Pete
 
Introduction to angular 2
Introduction to angular 2Introduction to angular 2
Introduction to angular 2
Dhyego Fernando
 
An Intro to Angular 2
An Intro to Angular 2An Intro to Angular 2
An Intro to Angular 2
Ron Heft
 
Angular 2: core concepts
Angular 2: core conceptsAngular 2: core concepts
Angular 2: core concepts
Codemotion
 
Understanding Angular 2 - Shmuela Jacobs - Codemotion Milan 2016
Understanding Angular 2 - Shmuela Jacobs - Codemotion Milan 2016Understanding Angular 2 - Shmuela Jacobs - Codemotion Milan 2016
Understanding Angular 2 - Shmuela Jacobs - Codemotion Milan 2016
Codemotion
 
JavaScript - The Universal Platform?
JavaScript - The Universal Platform?JavaScript - The Universal Platform?
JavaScript - The Universal Platform?
Jonas Bandi
 
Talk for DevFest 2021 - GDG Bénin
Talk for DevFest 2021 - GDG BéninTalk for DevFest 2021 - GDG Bénin
Talk for DevFest 2021 - GDG Bénin
Ezéchiel Amen AGBLA
 
Angular2 with TypeScript
Angular2 with TypeScript Angular2 with TypeScript
Angular2 with TypeScript
Rohit Bishnoi
 
Angular2
Angular2Angular2
Angular 5
Angular 5Angular 5
Introduction to angular 2
Introduction to angular 2Introduction to angular 2
Introduction to angular 2
Dor Moshe
 
Introduction to angular 4
Introduction to angular 4Introduction to angular 4
Introduction to angular 4
Marwane El Azami
 

What's hot (20)

Angular 2 overview
Angular 2 overviewAngular 2 overview
Angular 2 overview
 
Angular 2 - Core Concepts
Angular 2 - Core ConceptsAngular 2 - Core Concepts
Angular 2 - Core Concepts
 
Angular2 intro
Angular2 introAngular2 intro
Angular2 intro
 
Angular 2
Angular 2Angular 2
Angular 2
 
Tech Webinar: Angular 2, Introduction to a new framework
Tech Webinar: Angular 2, Introduction to a new frameworkTech Webinar: Angular 2, Introduction to a new framework
Tech Webinar: Angular 2, Introduction to a new framework
 
What’s new in angular 2
What’s new in angular 2What’s new in angular 2
What’s new in angular 2
 
Angular 2 - The Next Framework
Angular 2 - The Next FrameworkAngular 2 - The Next Framework
Angular 2 - The Next Framework
 
Adventures with Angular 2
Adventures with Angular 2Adventures with Angular 2
Adventures with Angular 2
 
Introduction to Angular 2
Introduction to Angular 2Introduction to Angular 2
Introduction to Angular 2
 
Introduction to angular 2
Introduction to angular 2Introduction to angular 2
Introduction to angular 2
 
An Intro to Angular 2
An Intro to Angular 2An Intro to Angular 2
An Intro to Angular 2
 
Angular 2: core concepts
Angular 2: core conceptsAngular 2: core concepts
Angular 2: core concepts
 
Understanding Angular 2 - Shmuela Jacobs - Codemotion Milan 2016
Understanding Angular 2 - Shmuela Jacobs - Codemotion Milan 2016Understanding Angular 2 - Shmuela Jacobs - Codemotion Milan 2016
Understanding Angular 2 - Shmuela Jacobs - Codemotion Milan 2016
 
JavaScript - The Universal Platform?
JavaScript - The Universal Platform?JavaScript - The Universal Platform?
JavaScript - The Universal Platform?
 
Talk for DevFest 2021 - GDG Bénin
Talk for DevFest 2021 - GDG BéninTalk for DevFest 2021 - GDG Bénin
Talk for DevFest 2021 - GDG Bénin
 
Angular2 with TypeScript
Angular2 with TypeScript Angular2 with TypeScript
Angular2 with TypeScript
 
Angular2
Angular2Angular2
Angular2
 
Angular 5
Angular 5Angular 5
Angular 5
 
Introduction to angular 2
Introduction to angular 2Introduction to angular 2
Introduction to angular 2
 
Introduction to angular 4
Introduction to angular 4Introduction to angular 4
Introduction to angular 4
 

Viewers also liked

Introduction à Angular 2
Introduction à Angular 2Introduction à Angular 2
Introduction à Angular 2
Vincent Caillierez
 
TypeScript and SharePoint
TypeScript and SharePoint TypeScript and SharePoint
TypeScript and SharePoint
WePlus Consultancy
 
Type script
Type scriptType script
Type script
Zunair Shoes
 
Angular 2 and TypeScript - 2016 Dump Day
Angular 2 and TypeScript - 2016 Dump DayAngular 2 and TypeScript - 2016 Dump Day
Angular 2 and TypeScript - 2016 Dump Day
NETMedia
 
Kann JavaScript elegant sein?
Kann JavaScript elegant sein?Kann JavaScript elegant sein?
Kann JavaScript elegant sein?jbandi
 
Java & JavaScript: Best Friends?
Java & JavaScript: Best Friends?Java & JavaScript: Best Friends?
Java & JavaScript: Best Friends?
jbandi
 
TypeScript Presentation
TypeScript PresentationTypeScript Presentation
TypeScript Presentation
Patrick John Pacaña
 
Typescript ppt
Typescript pptTypescript ppt
Typescript ppt
akhilsreyas
 
Vert.x v3 - high performance polyglot application toolkit
Vert.x v3 - high performance  polyglot application toolkitVert.x v3 - high performance  polyglot application toolkit
Vert.x v3 - high performance polyglot application toolkit
Sages
 
vert.x - asynchronous event-driven web applications on the JVM
vert.x - asynchronous event-driven web applications on the JVMvert.x - asynchronous event-driven web applications on the JVM
vert.x - asynchronous event-driven web applications on the JVM
jbandi
 
TypeScript: coding JavaScript without the pain
TypeScript: coding JavaScript without the painTypeScript: coding JavaScript without the pain
TypeScript: coding JavaScript without the pain
Sander Mak (@Sander_Mak)
 

Viewers also liked (12)

Introduction à Angular 2
Introduction à Angular 2Introduction à Angular 2
Introduction à Angular 2
 
TypeScript and SharePoint
TypeScript and SharePoint TypeScript and SharePoint
TypeScript and SharePoint
 
Type script
Type scriptType script
Type script
 
Angular 2 and TypeScript - 2016 Dump Day
Angular 2 and TypeScript - 2016 Dump DayAngular 2 and TypeScript - 2016 Dump Day
Angular 2 and TypeScript - 2016 Dump Day
 
Kann JavaScript elegant sein?
Kann JavaScript elegant sein?Kann JavaScript elegant sein?
Kann JavaScript elegant sein?
 
Java & JavaScript: Best Friends?
Java & JavaScript: Best Friends?Java & JavaScript: Best Friends?
Java & JavaScript: Best Friends?
 
TypeScript Presentation
TypeScript PresentationTypeScript Presentation
TypeScript Presentation
 
Typescript ppt
Typescript pptTypescript ppt
Typescript ppt
 
Vert.x v3 - high performance polyglot application toolkit
Vert.x v3 - high performance  polyglot application toolkitVert.x v3 - high performance  polyglot application toolkit
Vert.x v3 - high performance polyglot application toolkit
 
vert.x - asynchronous event-driven web applications on the JVM
vert.x - asynchronous event-driven web applications on the JVMvert.x - asynchronous event-driven web applications on the JVM
vert.x - asynchronous event-driven web applications on the JVM
 
Introduction to Angularjs
Introduction to AngularjsIntroduction to Angularjs
Introduction to Angularjs
 
TypeScript: coding JavaScript without the pain
TypeScript: coding JavaScript without the painTypeScript: coding JavaScript without the pain
TypeScript: coding JavaScript without the pain
 

Similar to Angular 2: What's New?

El viaje de Angular1 a Angular2
El viaje de Angular1 a Angular2El viaje de Angular1 a Angular2
El viaje de Angular1 a Angular2
Antonio de la Torre Fernández
 
Angular Js
Angular JsAngular Js
Angular Js
Knoldus Inc.
 
Angular js workshop
Angular js workshopAngular js workshop
Angular js workshop
Rolands Krumbergs
 
Angular 2
Angular 2Angular 2
Angular 2
Nigam Goyal
 
Ng talk
Ng talkNg talk
Migrating an application from Angular 1 to Angular 2
Migrating an application from Angular 1 to Angular 2 Migrating an application from Angular 1 to Angular 2
Migrating an application from Angular 1 to Angular 2
Ross Dederer
 
Getting Started with the Angular 2 CLI
Getting Started with the Angular 2 CLIGetting Started with the Angular 2 CLI
Getting Started with the Angular 2 CLI
Jim Lynch
 
Angular JS 2_0 BCS CTO_in_Res V3
Angular JS 2_0 BCS CTO_in_Res V3Angular JS 2_0 BCS CTO_in_Res V3
Angular JS 2_0 BCS CTO_in_Res V3
Bruce Pentreath
 
Angular 1.x reloaded: improve your app now! and get ready for 2.0
Angular 1.x reloaded:  improve your app now! and get ready for 2.0Angular 1.x reloaded:  improve your app now! and get ready for 2.0
Angular 1.x reloaded: improve your app now! and get ready for 2.0
Carlo Bonamico
 
Angular js 2.0 beta
Angular js 2.0 betaAngular js 2.0 beta
Angular js 2.0 beta
Nagaraju Sangam
 
26 top angular 8 interview questions to know in 2020 [www.full stack.cafe]
26 top angular 8 interview questions to know in 2020   [www.full stack.cafe]26 top angular 8 interview questions to know in 2020   [www.full stack.cafe]
26 top angular 8 interview questions to know in 2020 [www.full stack.cafe]
Alex Ershov
 
Angular kickstart slideshare
Angular kickstart   slideshareAngular kickstart   slideshare
Angular kickstart slideshare
SaleemMalik52
 
Angular.ppt
Angular.pptAngular.ppt
Angular.ppt
Mytrux1
 
Reason to choose Angular JS for your Web Application
Reason to choose Angular JS for your Web ApplicationReason to choose Angular JS for your Web Application
Reason to choose Angular JS for your Web Application
Priyanka Verma
 
Angular elements - embed your angular components EVERYWHERE
Angular elements - embed your angular components EVERYWHEREAngular elements - embed your angular components EVERYWHERE
Angular elements - embed your angular components EVERYWHERE
Nadav Mary
 
Angular 2 - How we got here?
Angular 2 - How we got here?Angular 2 - How we got here?
Angular 2 - How we got here?
Marios Fakiolas
 
Angular
AngularAngular
Migrating an Application from Angular 1 to Angular 2
Migrating an Application from Angular 1 to Angular 2 Migrating an Application from Angular 1 to Angular 2
Migrating an Application from Angular 1 to Angular 2
Ross Dederer
 
Angular interview questions
Angular interview questionsAngular interview questions
Angular interview questions
Goa App
 
Angular js interview question answer for fresher
Angular js interview question answer for fresherAngular js interview question answer for fresher
Angular js interview question answer for fresher
Ravi Bhadauria
 

Similar to Angular 2: What's New? (20)

El viaje de Angular1 a Angular2
El viaje de Angular1 a Angular2El viaje de Angular1 a Angular2
El viaje de Angular1 a Angular2
 
Angular Js
Angular JsAngular Js
Angular Js
 
Angular js workshop
Angular js workshopAngular js workshop
Angular js workshop
 
Angular 2
Angular 2Angular 2
Angular 2
 
Ng talk
Ng talkNg talk
Ng talk
 
Migrating an application from Angular 1 to Angular 2
Migrating an application from Angular 1 to Angular 2 Migrating an application from Angular 1 to Angular 2
Migrating an application from Angular 1 to Angular 2
 
Getting Started with the Angular 2 CLI
Getting Started with the Angular 2 CLIGetting Started with the Angular 2 CLI
Getting Started with the Angular 2 CLI
 
Angular JS 2_0 BCS CTO_in_Res V3
Angular JS 2_0 BCS CTO_in_Res V3Angular JS 2_0 BCS CTO_in_Res V3
Angular JS 2_0 BCS CTO_in_Res V3
 
Angular 1.x reloaded: improve your app now! and get ready for 2.0
Angular 1.x reloaded:  improve your app now! and get ready for 2.0Angular 1.x reloaded:  improve your app now! and get ready for 2.0
Angular 1.x reloaded: improve your app now! and get ready for 2.0
 
Angular js 2.0 beta
Angular js 2.0 betaAngular js 2.0 beta
Angular js 2.0 beta
 
26 top angular 8 interview questions to know in 2020 [www.full stack.cafe]
26 top angular 8 interview questions to know in 2020   [www.full stack.cafe]26 top angular 8 interview questions to know in 2020   [www.full stack.cafe]
26 top angular 8 interview questions to know in 2020 [www.full stack.cafe]
 
Angular kickstart slideshare
Angular kickstart   slideshareAngular kickstart   slideshare
Angular kickstart slideshare
 
Angular.ppt
Angular.pptAngular.ppt
Angular.ppt
 
Reason to choose Angular JS for your Web Application
Reason to choose Angular JS for your Web ApplicationReason to choose Angular JS for your Web Application
Reason to choose Angular JS for your Web Application
 
Angular elements - embed your angular components EVERYWHERE
Angular elements - embed your angular components EVERYWHEREAngular elements - embed your angular components EVERYWHERE
Angular elements - embed your angular components EVERYWHERE
 
Angular 2 - How we got here?
Angular 2 - How we got here?Angular 2 - How we got here?
Angular 2 - How we got here?
 
Angular
AngularAngular
Angular
 
Migrating an Application from Angular 1 to Angular 2
Migrating an Application from Angular 1 to Angular 2 Migrating an Application from Angular 1 to Angular 2
Migrating an Application from Angular 1 to Angular 2
 
Angular interview questions
Angular interview questionsAngular interview questions
Angular interview questions
 
Angular js interview question answer for fresher
Angular js interview question answer for fresherAngular js interview question answer for fresher
Angular js interview question answer for fresher
 

More from jbandi

From User Action to Framework Reaction
From User Action to Framework ReactionFrom User Action to Framework Reaction
From User Action to Framework Reaction
jbandi
 
From User Action to Framework Reaction
From User Action to Framework ReactionFrom User Action to Framework Reaction
From User Action to Framework Reaction
jbandi
 
The curious Life of JavaScript - Talk at SI-SE 2015
The curious Life of JavaScript - Talk at SI-SE 2015The curious Life of JavaScript - Talk at SI-SE 2015
The curious Life of JavaScript - Talk at SI-SE 2015
jbandi
 
There is something about JavaScript - Choose Forum 2014
There is something about JavaScript - Choose Forum 2014There is something about JavaScript - Choose Forum 2014
There is something about JavaScript - Choose Forum 2014jbandi
 
Professional JavaScript Development (An Introduction for Java Developers)
Professional JavaScript Development (An Introduction for Java Developers)Professional JavaScript Development (An Introduction for Java Developers)
Professional JavaScript Development (An Introduction for Java Developers)
jbandi
 
NDC 2011 - Building .NET Applications with BDD
NDC 2011 - Building .NET Applications with BDDNDC 2011 - Building .NET Applications with BDD
NDC 2011 - Building .NET Applications with BDD
jbandi
 
NDC 2011 - SpecFlow: Pragmatic BDD for .NET
NDC 2011 - SpecFlow: Pragmatic BDD for .NETNDC 2011 - SpecFlow: Pragmatic BDD for .NET
NDC 2011 - SpecFlow: Pragmatic BDD for .NET
jbandi
 
Testing Heute: ein Relikt aus dem Zeitalter des goldenen Wasserfalls?
Testing Heute: ein Relikt aus dem Zeitalter des goldenen Wasserfalls?Testing Heute: ein Relikt aus dem Zeitalter des goldenen Wasserfalls?
Testing Heute: ein Relikt aus dem Zeitalter des goldenen Wasserfalls?
jbandi
 
Testing: Chances and Challenges in an agile World
Testing: Chances and Challenges in an agile WorldTesting: Chances and Challenges in an agile World
Testing: Chances and Challenges in an agile World
jbandi
 

More from jbandi (9)

From User Action to Framework Reaction
From User Action to Framework ReactionFrom User Action to Framework Reaction
From User Action to Framework Reaction
 
From User Action to Framework Reaction
From User Action to Framework ReactionFrom User Action to Framework Reaction
From User Action to Framework Reaction
 
The curious Life of JavaScript - Talk at SI-SE 2015
The curious Life of JavaScript - Talk at SI-SE 2015The curious Life of JavaScript - Talk at SI-SE 2015
The curious Life of JavaScript - Talk at SI-SE 2015
 
There is something about JavaScript - Choose Forum 2014
There is something about JavaScript - Choose Forum 2014There is something about JavaScript - Choose Forum 2014
There is something about JavaScript - Choose Forum 2014
 
Professional JavaScript Development (An Introduction for Java Developers)
Professional JavaScript Development (An Introduction for Java Developers)Professional JavaScript Development (An Introduction for Java Developers)
Professional JavaScript Development (An Introduction for Java Developers)
 
NDC 2011 - Building .NET Applications with BDD
NDC 2011 - Building .NET Applications with BDDNDC 2011 - Building .NET Applications with BDD
NDC 2011 - Building .NET Applications with BDD
 
NDC 2011 - SpecFlow: Pragmatic BDD for .NET
NDC 2011 - SpecFlow: Pragmatic BDD for .NETNDC 2011 - SpecFlow: Pragmatic BDD for .NET
NDC 2011 - SpecFlow: Pragmatic BDD for .NET
 
Testing Heute: ein Relikt aus dem Zeitalter des goldenen Wasserfalls?
Testing Heute: ein Relikt aus dem Zeitalter des goldenen Wasserfalls?Testing Heute: ein Relikt aus dem Zeitalter des goldenen Wasserfalls?
Testing Heute: ein Relikt aus dem Zeitalter des goldenen Wasserfalls?
 
Testing: Chances and Challenges in an agile World
Testing: Chances and Challenges in an agile WorldTesting: Chances and Challenges in an agile World
Testing: Chances and Challenges in an agile World
 

Recently uploaded

A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
kalichargn70th171
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Visitor Management System in India- Vizman.app
Visitor Management System in India- Vizman.appVisitor Management System in India- Vizman.app
Visitor Management System in India- Vizman.app
NaapbooksPrivateLimi
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024
Sharepoint Designs
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
Strategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptxStrategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptx
varshanayak241
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
XfilesPro
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
Peter Caitens
 

Recently uploaded (20)

A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Visitor Management System in India- Vizman.app
Visitor Management System in India- Vizman.appVisitor Management System in India- Vizman.app
Visitor Management System in India- Vizman.app
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
Strategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptxStrategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptx
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
 

Angular 2: What's New?

  • 1. Angular 2:What’s new? Jonas Bandi, IvoryCode GmbH
  • 2. Once upon a time …
  • 3. … the world was peacefully creating applications with AngularJS …
  • 4. …but change was lurking in the maze of a mailing list … https://groups.google.com/forum/#!search/misko$20Hevery$20may$2022$202013/polymer-dev/4RSYaKmbtEk/uYnY3900wpIJ
  • 5. … then the threat became real … ng-europe, October 2014 https://www.youtube.com/watch?v=gNmWybAyBHI
  • 7.
  • 8. Forget anything you know about AngularJS?
  • 9. About me … Jonas Bandi
 jonas.bandi@ivorycode.com Twitter: @jbandi - Freelancer: www.ivorycode.com - Dozent an der Berner Fachhochschule seit 2007 - Trainer bei Digicomp für AngularJS und Angular 2 - In-House Kurse & Coachings für Web-Technologien im Enterprise (UBS, Postfinance, Mobiliar, BIT, SBB ... )
  • 10. AngularJS is a powerful Framework … … but it is old!
  • 13. The web has changed since 2009… 2015
  • 14. Angular 2 is a new implementation of the concepts behind AngularJS … … for the modern web. … but Angular 2 is not an update to AngularJS.
  • 15. Angular 2 is built upon the modern web: 2015 - web workers - shadow dom Angular 2 is built for the modern web: • mobile browsers • modern browsers • server-side rendering Angular 2 improves over AngularJS: • faster • easier to use & learn • built on proven best practices (i.e. ui- components, unidirectional data flow …)
  • 16. The core concepts of Angular 2 are clean and easy to learn …
  • 17.
  • 18. Angular Key Concepts controllers components data-binding data-binding / data-flow directives directives services dependency injection services dependency injection components (ng 1.5) components AngularJS Angular 2
  • 19. Angular Key Concepts controllers components components (ng 1.5) AngularJS Angular 2 ES2015 class JavaScript Function DDO
  • 21. Angular 2 Components Template Class Metadata + + = Component @Component Components are the main building-block of Angular 2.
  • 23. var app = angular.module('todoApp');
 app.controller('todoController', ToDoController);
 
 ToDoController.$inject = ['ToDoService'];
 function ToDoController(todoService) {
 var ctrl = this;
 
 ctrl.newToDo = new ToDoItem();
 ctrl.todos = todoService.getToDos();
 ... @Component({
 selector: 'td-todo-app',
 template: require('./app.component.html'),
 directives: [NewTodo, ToDoList],
 providers: [ToDoService]
 })
 export class TodoApp implements OnInit {
 
 todos: Array<ToDo> = [];
 
 constructor(private todoService:ToDoService){}
 
 ngOnInit() {
 this.todos = this.todoService.loadToDos();
 } ... AngularJS Angular 2 Controller -> Component
  • 24. var app = angular.module('todoApp');
 
 app.component('TodoApp', {
 templateUrl: 'todo-app.html',
 controller: TodoAppComponent
 });
 
 ToDoController.$inject = ['ToDoService'];
 function TodoAppComponent(todoService) {
 var ctrl = this;
 
 ctrl.newToDo = new ToDoItem();
 ctrl.todos = todoService.getToDos();
 
 ... @Component({
 selector: 'td-todo-app',
 template: require('./app.component.html'),
 directives: [NewTodo, ToDoList],
 providers: [ToDoService]
 })
 export class TodoApp implements OnInit {
 
 todos: Array<ToDo> = [];
 
 constructor(private todoService:ToDoService){}
 
 ngOnInit() {
 this.todos = this.todoService.loadToDos();
 } ... AngularJS Angular 2 Component(ng 1.5) -> Component
  • 25. Directives & Components A directive is a construct, that is embedded into html and has a special meaning for the framework. Directives Components Structural
 Directives Attribute
 Directives Component Directive is a composes
  • 26. Angular Key Concepts directives directives AngularJS Angular 2 many directives from ng1 are not needed in ng2 templates a lot of directives 
 (i.e ng-click, ng-focus, ng-blur, ng-keyup …)
  • 27. AngularJS vs.Angular 2: Directives The generic binding capabilities of Angular 2 makes many directives from AngularJS obsolete. https://docs.angularjs.org/api/ng/directive https://angular.io/docs/ts/latest/api/ <div ng-style={color:'red'}> <img ng-src="{{ctrl.path}}"> <a ng-href=“{{ctrl.link}}"> <div [style.color]="color"> <img [src]="path"> <a [href]="link"> ng-click="savePerson(person)" ng-focus="updateSummary()" ng-blur="commit()" ng-keyup="updateCalculation()" (click)="savePerson(person)" (focus)="updateSummary()" (blur)="commit()" (keyup)="updateCalculation()" AngularJS Angular 2
  • 28. Structural Directives Use html as a template <ul class="todo-list" >
 <li ng-repeat="todo in ctrl.todos">
 {{todo.title}}
 <button class="remove-button" ng-click="ctrl.removeToDo(todo)">
 x
 </button>
 </li>
 </ul> <ul class="todo-list" >
 <li *ngFor="let todo of todos">
 {{todo.title}}
 <button class="remove-button" (click)="removeToDo(todo)">
 x
 </button>
 </li>
 </ul>
 AngularJS Angular 2 ng-repeat, ng-if *ngFor, *ngIf
  • 29. Angular Key Concepts data-binding data-binding / data-flow AngularJS Angular 2 interpolation & 2-way databinding interpolation & 2-way databinding uni-directional data-flow$scope generic property & event binding
  • 30. Databinding Interpolation Property Binding Event Binding Two Way Binding {{value}} [property]="value" (event)="handler" [(ngModel)]="value" DOM (Template) component
  • 31. Nested Components: Uni-Directional Data-Flow State should be explicitly owned by a component. • A parent component passes state to children • Children should not edit state of their parent • Children “notify” parents (events, actions …) Child Component Child Component Parent Component state properties 
 go in logic eventscomeout update @Input() @Output() Angular formalises unidirectional data-flow with @Input() and @Output() properties.
  • 32. Angular Key Concepts services services AngularJS Angular 2 a function registered as factory, service or provider ES2015 class
  • 33. Services Objects that perform a specific job. Instantiated by Angular. var app = angular.module('todoApp');
 app.factory('toDoService', toDoService);
 
 function toDoService() {
 'use strict';
 
 return {
 getToDos: getToDos,
 addToDo: addToDo,
 removeToDo: removeToDo
 }; ... @Injectable()
 export class ToDoService {
 
 loadToDos():Array<ToDo> {
 var loadedToDos = JSON.parse( localStorage .getItem(TODOS_KEY) );
 return loadedToDos || [];
 }
 ... AngularJS Angular 2
  • 34. Angular Key Concepts dependency injection dependency injection AngularJS Angular 2 DI based on naming DI based on types (usingTypeScript and Decorators) Singletons Hierarchical DI
  • 35. Dependency Injection var app = angular.module('todoApp');
 app.factory('toDoService', toDoService);
 
 function toDoService() { ... } @Injectable()
 export class ToDoService {
 ... } AngularJS Angular 2 @Component({
 selector: 'td-todo-app',
 template: require('./app.component.html'),
 directives: [NewTodo, ToDoList],
 providers: [ToDoService]
 })
 export class TodoApp implements OnInit {
 constructor(private todoService:ToDoService){} ... } app.controller('todoController', ToDoController);
 
 ToDoController.$inject = ['toDoService'];
 function ToDoController(todoService) { ... } registration: injection:
  • 36. Angular Key Concepts controllers components data-binding data-binding / data-flow directives directives services dependency injection services dependency injection components (ng 1.5) components AngularJS Angular 2 Many key concepts remain the same. But the implementation has changed.
  • 37. There is more … filters Pipes AngularJS Angular 2 http with Promises http with RxJs (Promises still supported) Routing (template centered) Hierarchical Component Router … …
  • 38. The core concepts of Angular 2 are clean and easy to learn … … but setting up a full Angular project can be quite complicated today.
  • 40. AngularJS: an effective tool but not elegant …
  • 42. Angular is distributed through NPM Node Package Manger To get Angular on your development machine, you have to install Node.JS. https://www.npmjs.com/
  • 44. Language Choices ES5 2015 weakly typed strongly typed (optional) no com-
 pilation compilation
  • 45. Angular for ES2015 &TS relies on ES2015 modules.
 There is no support for ES2015 modules in browsers today.
 A module-system is mandatory. VS. SystemJS To pack or (not) to pack?
  • 46. Build Toolchain Typically you need a front-end build for transpilation and module bundling.
  • 47. Angular 2 aspires to be a platform progressive web-apps for mobile
 (web workers, cache, push, offline) https://mobile.angular.io/ classic web-apps for desktops installed mobile apps (hybrid) installed mobile apps (native integrations) server side rendering https://universal.angular.io/ installed desktop apps https://github.com/NathanWalker/angular2-seed-advanced dev tooling https://cli.angular.io/
  • 48. Is Angular 2 ready for production? October 2014: Initial announcement of Angular 2 December 2015: Angular 2 released as beta May 2016: Angular 2 Release Candidate 0 June 2016: Angular 2 Release Candidate 2 What is missing: - Router (!) - Offline Compilation & BuildToolchain - internationalization - 3rd Party Ecosystem https://www.reddit.com/r/angularjs/comments/4i2n3k/angular_2_was_never_ready_for_a_release_candidate/
  • 49. The Router Debacle http://blog.jonasbandi.net/2016/06/ng2-router.html - Dez 2014: New Router announced for Angular 1.4 and Angular 2 - June 2015: New Router is deprecated - Angular 2 beta is developed with the Component router - March 2016: Component Router is released for Angular 1.5 - May 2016: Component Router is deprecated. Router 2.0 is part of Angular 2 RC1 - June 2016: Router 2.0 is deprecated, Router 3.0 is announced
  • 50. Jonas Bandi
 jonas.bandi@ivorycode.com Twitter: @jbandi Tomorrow: DevDay Workshop - Hands On Angular 2 Digicomp Course: Front-End-Entwicklung mit Angular 2, JavaScript und TypeScript Questions?