SlideShare a Scribd company logo
Presentation
on
Angular
By: Ramesh Adhikari
1
Introduction of angular
● Google’s popular and open-source JavaScript framework
● building and developing single-page mobile and desktop applications
● Angular 5 was announced to the users on 1st November 2017.
● Angular 5 is focused on making the Angular applications smaller, faster
and easier to use.
2
Angular CLI
● Ng generate component component_name (to generate component)
● Ng generate service servic_name (to generate service)
● Ng generate class class_name (to create class to specify attribute)
● npm install -g @angular/cli (install the Angular CLI globally.)
● ng new project_name (Generate a new project )
● ng serve --open (launches the server)
3
Architecture and Concepts
seven main building blocks of an Angular Application.
1. Component
2. Templates
3. Metadata
4. Data Binding
5. Directives
6. Services
7. Dependency Injection
4
Basic Architecture
5
Components● the main building block of an Angular Application
● contains the definition of the View and the data that defines how the View
looks and behaves
● Component passes the data to the view using a process called Data Binding
● Parent child component
6
Component Communication
● The Parent Component communicates with the child component using
the @Input Annotation.
● The child components detect changes to these Input properties using
OnChanges life Cycle hook or with a Property Setter.
● The child component can communicate with the parent by raising an
event, which the parent can listen
Passing data to child component /Passing Data to Parent Component
7
Component Life Cycle Hook
● OnInit
● OnDestroy
● Onchanges
● DoCheck
8
Data Binding in Angular
There are four ways you can bind data in Angular
1. Interpolation
2. Property Binding
3. Event Binding
4. Two Way Binding
9
Directives
The Angular directive helps us to manipulate the DOM.
● ngFor
● ngSwitch Directive
● ngIf Directive
● ngClass Directive
● ngStyle Directive
10
Pipes
pipes are used to Transform the Data. For Example, the Date pipe formats
the date according to locale rules.
● Angular Pipes
● Angular Custom Pipes
Pipes provided by Angular
CurrencyPipe, DatePipe , DecimalPipe, JsonPipe, LowerCasePipe
,UpperCasePipe, , PercentPipe, SlicePipe , AsyncPipe
11
Forms
● Template driven forms(ngForm)
● Reactive form
12
Services & Dependency Injection
● Services allow us to create a reusable code and use it every component
that needs it.
● The dependencies are declared in the Module using the Providers
metadata
13
Httpclient module
● The newly designed HttpClient Module allows us to query the Remote
API source to get data into our Application
● It requires us to Subscribe to the returned response using RxJs
observables.
14
Http Example (with retry())
getConfig() {
return this.http.get<Config>(this.configUrl)
.pipe(
retry(3), // retry a failed request up to 3 times
catchError(this.handleError) // then handle the error
);
} 15
Router
❖ The Router module handles the navigation & Routing in Angular
❖ The Routing allows us to move from one part of the application to
another part or one View to another View
A typical Angular Route has two properties:
● path: a string that matches the URL in the browser address bar.
● component: the component that the router should create when
navigating to this route.
16
Middleware/ Guard in Angular
● CanActivate (Checks to see if a user can visit a route)
● CanActivateChild (Checks to see if a user can visit a routes
children)
● CanDeactivate (Checks to see if a user can exit a route)
17
Lazy load module in angular
There are three main steps to setting up a lazy loaded feature module:
● Create the feature module.
● Create the feature module’s routing module.
● Configure the routes.
Each feature module acts as a doorway via the router, the lazy loading
syntax uses loadChildren followed by a string that is the path to the module,
a hash mark or #, and the module’s class name. forRoot() and forChild()
18
Structure of project
● feature module,
● shared module,
● core module
19
ControlValueAccessor
If you’re working on a complex project inevitably you will face the situation when you have to create a
custom form control. The essential component of this task will be implementing ControlValueAccessor
interface ControlValueAccessor{
writeValue(obj: any): void
registerOnChange(fn: any): void
registerOnTouched(fn: any): void
setDisabledState(isDisabled: boolean)?: void
} 20
OAuth 2.0 Grants
1. Resource owner credentials grant
Allow to request tokens on behalf of user by sending the username and password to the
token end points.
1. Authorisation Code Grant
The authorization code grant should be very familiar if you’ve ever
signed into an application using your Facebook or Google account.
3 Client credentials grant
this grant is suitable for machine-to-machine authentication where a
specific user’s permission to access data is not required.
21
4. Implicit grant
similar to the authorization code grant with two distinct differences.
● single page web apps that can’t keep a client secret because all of the
application code and storage is easily accessible
● the authorization server returns an access token instead of
authorization code
5. Refresh token grant
Access tokens eventually expire; however some grants respond with a refresh token which
enables the client to get a new access token without requiring the user to be redirected. 22
Thank
You !
Any Questions ?
23

More Related Content

What's hot

Migrating to Angular 2
Migrating to Angular 2Migrating to Angular 2
Migrating to Angular 2
FITC
 

What's hot (20)

AngularJS Workshop
AngularJS WorkshopAngularJS Workshop
AngularJS Workshop
 
Angular 1.x in action now
Angular 1.x in action nowAngular 1.x in action now
Angular 1.x in action now
 
Angular 2.0
Angular  2.0Angular  2.0
Angular 2.0
 
Best Practices in Qt Quick/QML - Part III
Best Practices in Qt Quick/QML - Part IIIBest Practices in Qt Quick/QML - Part III
Best Practices in Qt Quick/QML - Part III
 
OpenGL Fixed Function to Shaders - Porting a fixed function application to “m...
OpenGL Fixed Function to Shaders - Porting a fixed function application to “m...OpenGL Fixed Function to Shaders - Porting a fixed function application to “m...
OpenGL Fixed Function to Shaders - Porting a fixed function application to “m...
 
Design Summit - Automate roadmap - Madhu Kanoor
Design Summit - Automate roadmap - Madhu KanoorDesign Summit - Automate roadmap - Madhu Kanoor
Design Summit - Automate roadmap - Madhu Kanoor
 
Angular 2 and Wijmo 5 - GrapeCity Echo 2016 Tokyo
Angular 2 and Wijmo 5 - GrapeCity Echo 2016 TokyoAngular 2 and Wijmo 5 - GrapeCity Echo 2016 Tokyo
Angular 2 and Wijmo 5 - GrapeCity Echo 2016 Tokyo
 
Angular 4
Angular 4Angular 4
Angular 4
 
Angular js- 1.X
Angular js- 1.XAngular js- 1.X
Angular js- 1.X
 
Vue.js Use Cases
Vue.js Use CasesVue.js Use Cases
Vue.js Use Cases
 
How to create an Angular builder
How to create an Angular builderHow to create an Angular builder
How to create an Angular builder
 
Angular 2 overview
Angular 2 overviewAngular 2 overview
Angular 2 overview
 
Introduction to Angular 2
Introduction to Angular 2Introduction to Angular 2
Introduction to Angular 2
 
AngularJS Basics
AngularJS BasicsAngularJS Basics
AngularJS Basics
 
What angular 13 will bring to the table
What angular 13 will bring to the table What angular 13 will bring to the table
What angular 13 will bring to the table
 
Angular Weekend
Angular WeekendAngular Weekend
Angular Weekend
 
Angular 2 Crash Course
Angular  2 Crash CourseAngular  2 Crash Course
Angular 2 Crash Course
 
Express: A Jump-Start
Express: A Jump-StartExpress: A Jump-Start
Express: A Jump-Start
 
Migrating to Angular 2
Migrating to Angular 2Migrating to Angular 2
Migrating to Angular 2
 
AngularJS
AngularJSAngularJS
AngularJS
 

Similar to Presentation on angular 5

4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx
4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx
4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx
tilejak773
 

Similar to Presentation on angular 5 (20)

MuleSoft Surat Virtual Meetup#6 - MuleSoft Project Template Using Maven Arche...
MuleSoft Surat Virtual Meetup#6 - MuleSoft Project Template Using Maven Arche...MuleSoft Surat Virtual Meetup#6 - MuleSoft Project Template Using Maven Arche...
MuleSoft Surat Virtual Meetup#6 - MuleSoft Project Template Using Maven Arche...
 
Angular 9
Angular 9 Angular 9
Angular 9
 
Angular 14.pptx
Angular 14.pptxAngular 14.pptx
Angular 14.pptx
 
4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx
4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx
4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx
 
Angular4 getting started
Angular4 getting startedAngular4 getting started
Angular4 getting started
 
Angular workshop - Full Development Guide
Angular workshop - Full Development GuideAngular workshop - Full Development Guide
Angular workshop - Full Development Guide
 
Introduction to single page application with angular js
Introduction to single page application with angular jsIntroduction to single page application with angular js
Introduction to single page application with angular js
 
Angular Js Basics
Angular Js BasicsAngular Js Basics
Angular Js Basics
 
OpenDaylight and YANG
OpenDaylight and YANGOpenDaylight and YANG
OpenDaylight and YANG
 
Angular js 1.3 presentation for fed nov 2014
Angular js 1.3 presentation for fed   nov 2014Angular js 1.3 presentation for fed   nov 2014
Angular js 1.3 presentation for fed nov 2014
 
Angular meetup 2 2019-08-29
Angular meetup 2   2019-08-29Angular meetup 2   2019-08-29
Angular meetup 2 2019-08-29
 
AngularJS: Overview & Key Features
AngularJS: Overview & Key FeaturesAngularJS: Overview & Key Features
AngularJS: Overview & Key Features
 
Angular from Zero to Mastery - Training (Intermediate)
Angular from Zero to Mastery - Training (Intermediate)Angular from Zero to Mastery - Training (Intermediate)
Angular from Zero to Mastery - Training (Intermediate)
 
Single Page Applications in SharePoint with Angular
Single Page Applications in SharePoint with AngularSingle Page Applications in SharePoint with Angular
Single Page Applications in SharePoint with Angular
 
Foster - Getting started with Angular
Foster - Getting started with AngularFoster - Getting started with Angular
Foster - Getting started with Angular
 
Grails 101
Grails 101Grails 101
Grails 101
 
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
 
Revealing ALLSTOCKER
Revealing ALLSTOCKERRevealing ALLSTOCKER
Revealing ALLSTOCKER
 
WSO2 API Microgateway for Easier Development and Greater Scalability
WSO2 API Microgateway for Easier Development and Greater ScalabilityWSO2 API Microgateway for Easier Development and Greater Scalability
WSO2 API Microgateway for Easier Development and Greater Scalability
 
Front end development with Angular JS
Front end development with Angular JSFront end development with Angular JS
Front end development with Angular JS
 

Recently uploaded

Recently uploaded (20)

To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 

Presentation on angular 5

  • 2. Introduction of angular ● Google’s popular and open-source JavaScript framework ● building and developing single-page mobile and desktop applications ● Angular 5 was announced to the users on 1st November 2017. ● Angular 5 is focused on making the Angular applications smaller, faster and easier to use. 2
  • 3. Angular CLI ● Ng generate component component_name (to generate component) ● Ng generate service servic_name (to generate service) ● Ng generate class class_name (to create class to specify attribute) ● npm install -g @angular/cli (install the Angular CLI globally.) ● ng new project_name (Generate a new project ) ● ng serve --open (launches the server) 3
  • 4. Architecture and Concepts seven main building blocks of an Angular Application. 1. Component 2. Templates 3. Metadata 4. Data Binding 5. Directives 6. Services 7. Dependency Injection 4
  • 6. Components● the main building block of an Angular Application ● contains the definition of the View and the data that defines how the View looks and behaves ● Component passes the data to the view using a process called Data Binding ● Parent child component 6
  • 7. Component Communication ● The Parent Component communicates with the child component using the @Input Annotation. ● The child components detect changes to these Input properties using OnChanges life Cycle hook or with a Property Setter. ● The child component can communicate with the parent by raising an event, which the parent can listen Passing data to child component /Passing Data to Parent Component 7
  • 8. Component Life Cycle Hook ● OnInit ● OnDestroy ● Onchanges ● DoCheck 8
  • 9. Data Binding in Angular There are four ways you can bind data in Angular 1. Interpolation 2. Property Binding 3. Event Binding 4. Two Way Binding 9
  • 10. Directives The Angular directive helps us to manipulate the DOM. ● ngFor ● ngSwitch Directive ● ngIf Directive ● ngClass Directive ● ngStyle Directive 10
  • 11. Pipes pipes are used to Transform the Data. For Example, the Date pipe formats the date according to locale rules. ● Angular Pipes ● Angular Custom Pipes Pipes provided by Angular CurrencyPipe, DatePipe , DecimalPipe, JsonPipe, LowerCasePipe ,UpperCasePipe, , PercentPipe, SlicePipe , AsyncPipe 11
  • 12. Forms ● Template driven forms(ngForm) ● Reactive form 12
  • 13. Services & Dependency Injection ● Services allow us to create a reusable code and use it every component that needs it. ● The dependencies are declared in the Module using the Providers metadata 13
  • 14. Httpclient module ● The newly designed HttpClient Module allows us to query the Remote API source to get data into our Application ● It requires us to Subscribe to the returned response using RxJs observables. 14
  • 15. Http Example (with retry()) getConfig() { return this.http.get<Config>(this.configUrl) .pipe( retry(3), // retry a failed request up to 3 times catchError(this.handleError) // then handle the error ); } 15
  • 16. Router ❖ The Router module handles the navigation & Routing in Angular ❖ The Routing allows us to move from one part of the application to another part or one View to another View A typical Angular Route has two properties: ● path: a string that matches the URL in the browser address bar. ● component: the component that the router should create when navigating to this route. 16
  • 17. Middleware/ Guard in Angular ● CanActivate (Checks to see if a user can visit a route) ● CanActivateChild (Checks to see if a user can visit a routes children) ● CanDeactivate (Checks to see if a user can exit a route) 17
  • 18. Lazy load module in angular There are three main steps to setting up a lazy loaded feature module: ● Create the feature module. ● Create the feature module’s routing module. ● Configure the routes. Each feature module acts as a doorway via the router, the lazy loading syntax uses loadChildren followed by a string that is the path to the module, a hash mark or #, and the module’s class name. forRoot() and forChild() 18
  • 19. Structure of project ● feature module, ● shared module, ● core module 19
  • 20. ControlValueAccessor If you’re working on a complex project inevitably you will face the situation when you have to create a custom form control. The essential component of this task will be implementing ControlValueAccessor interface ControlValueAccessor{ writeValue(obj: any): void registerOnChange(fn: any): void registerOnTouched(fn: any): void setDisabledState(isDisabled: boolean)?: void } 20
  • 21. OAuth 2.0 Grants 1. Resource owner credentials grant Allow to request tokens on behalf of user by sending the username and password to the token end points. 1. Authorisation Code Grant The authorization code grant should be very familiar if you’ve ever signed into an application using your Facebook or Google account. 3 Client credentials grant this grant is suitable for machine-to-machine authentication where a specific user’s permission to access data is not required. 21
  • 22. 4. Implicit grant similar to the authorization code grant with two distinct differences. ● single page web apps that can’t keep a client secret because all of the application code and storage is easily accessible ● the authorization server returns an access token instead of authorization code 5. Refresh token grant Access tokens eventually expire; however some grants respond with a refresh token which enables the client to get a new access token without requiring the user to be redirected. 22