SlideShare a Scribd company logo
Step by Step - AngularJS
Dhananjay Kumar
@debug_mode
http://debugmode.net
Agenda
• Setting up Visual Studio as development environment
• Getting started with AngularJS
• $scope object and $rootScope object
• Controllers and nested controllers
• Services using service() method and factory() method
• CRUD operation
• Directives and creating basic Custom Directive
• Scopes in directives
• Isolated scope with local properties
Give Away
Tweet your experience about webinar using the hashtag
#Infragistics or tag @infragistics to win cool goodies from
us.
If you are in Delhi/NCR , join us for Infragistics Day
tomorrow. Its free workshop on AngularJS in Noida
I am Dhananjay Kumar
Infragistics Evangelist
6 times Microsoft MVP
C-Sharp Corner Mentor
@debug_mode
debugmode@outlook.com
http://debugmode.net
AngularJS
Client side
framework
Single Page
Application
Business logic
can be unit
tested with ease
Suitable for TDD
To create
dynamic web
page
Can we used
with any server
side technology
main components of AngularJS
Controllers Scopes Services
Directives Routing Module
Views
Data
Binding
Filters
Let us start with writing some
AngularJS code
$scope object
view controllerTalk to each other using $scope
$scope object
$scope serves as
the glue between
controller and the
view
View and the
controller both
have access of the
$scope object
$scope pass data
and behaviour to
the view from the
controller
$scope provides
execution context
for the DOM and
the expression
The $scope object is
plain JavaScript object.
We can add and remove
property as required
For each controller
creation a new $scope
gets created
$rootScope object
$rootScope is top most
scope on DOM element
with ng-app directive
In angular all the
$scope are created with
prototypal inheritance
$scope has access to
their parent $scope
object and eventually to
$rootScope object
$rootScope object is
parent of all the $scope
object
Controller in AngularJS
Controller is a
JavaScript constructor
functions which
contains data and the
business logic
Controller name should
start from the capital
letter and ends with
controller. For example
AuthorController
It takes $scope òbject
as parameter and
attach data and
behaviour to the $scope
object
Do not use controller to
manipulate DOM or
create custom filter
Controller in AngularJS
Each controller has its
own child $scope object
Whenever new
controller gets created
on the view angular
pass a $scope object to
it
Controller can be
attached to different
level of DOM. Hence it
creates $scope
hierarchy
$scope of the child
controller can access
and override data and
behaviour of the parent
controller
Let us write code to understand
• Controller and $scope object
• Controller Hierarchy
• Nested Controller
Service in AngularJS
Service organize and
share data and
functions across the
application
Service provides
methods to
communicate data
across the controllers
in a consistent way
Service is a singleton
object and it gets
instantiated only once
per application using
the $injector
Services are lazy
instantiated and gets
created when angular
app components need
it
There are many inbuilt
services like $http, $q
can be used as it is
There are five different
ways a custom service
can be created
Service
creation
service() factory() provider() value() constant()
Service in AngularJS
Let us write code to understand
• Services using service() method
• Services using factory() method
• Using $http service to perform AJAX
operation
• Perform CRUD operation
Directives in AngularJS
It attaches specified
behaviour to existing DOM
elements or create new
element
Directives can modify the
behaviour of a particular
DOM element or add new
custom element on the
DOM
Directive name must
be provided in the
camel case
On the view directive can
be used by separating the
camel case name either
using dash, colon, or
underscore
Combination of dash,
underscore or colon
can also be used
If directive name myFirstDirective
then on the view it can be used
either as my-first-
directive or my:first:directive
or my_first_directive or my_first-
directive or my-first:directive
There are many
built in directives
available
Some of them are
ng-show ,ng-
app,ng-controller
etc
Directives in AngularJS
Custom Directives can be used
As an attribute – set
restrict value to A
As a custom element –
set restrict value to E
As a comment – set
restrict value to M
As a class- set restrict
value to C
Scopes in Directives
Shared Scope Inherited Scope
Isolated Scope
Scopes in Directives
• Directive shared scope with the
enclosed controller
• It is default scope
Shared
Scope
• Directive inherit scope of the
enclosed controller
Inherited
Scope
• Directive and controller has
different scope
• Data is not shared
Isolated
Scope
Scopes in Directives
Isolated Scope properties
Let us write code to understand
• Create custom directive
• Using different scopes
• Using local scope properties in isolated
scope
Q& A ?
Summary
• Setting up Visual Studio as development environment
• Getting started with AngularJS
• $scope object and $rootScope object
• Controllers and nested controllers
• Services using service() method and factory() method
• CRUD operation
• Directives and Creating basic Custom Directive
• Scopes in directives
• Isolated scope with local properties
What Infragistics can offer you?
• We welcome all of you to take advantage of a FREE 30 Day Trial by downloading
the product at: http://www.infragistics.com/products/ultimate/download
• Please reach out to us at Sales-India@infragistics.com for any follow up questions
you may have. We welcome the opportunity to assist you.

More Related Content

What's hot (20)

PDF
AngularJS introduction
Tania Gonzales
 
PDF
AngularJS - What is it & Why is it awesome ? (with demos)
Gary Arora
 
PPTX
Front end development with Angular JS
Bipin
 
PPTX
Introduction to single page application with angular js
Mindfire Solutions
 
PPTX
AngularJS Beginners Workshop
Sathish VJ
 
PPTX
Angular js
Manav Prasad
 
PPTX
5 angularjs features
Alexey (Mr_Mig) Migutsky
 
PPTX
Angular js tutorial slides
samhelman
 
PPTX
Introduction to Angularjs
Manish Shekhawat
 
PPTX
Angular js PPT
Imtiyaz Ahmad Khan
 
PDF
Introduction to AngularJS
Jussi Pohjolainen
 
PDF
Angularjs architecture
Michael He
 
PPTX
Angular js presentation at Datacom
David Xi Peng Yang
 
PPTX
Getting Started with Angular JS
Akshay Mathur
 
PDF
Introduction of angular js
Tamer Solieman
 
PPTX
Introduction to Angular js 2.0
Nagaraju Sangam
 
PPTX
Introduction to Angular JS
Santhosh Kumar Srinivasan
 
PPTX
AngularJS One Day Workshop
Shyam Seshadri
 
PDF
Introduction to AngularJS
Aldo Pizzagalli
 
PPTX
The AngularJS way
Boyan Mihaylov
 
AngularJS introduction
Tania Gonzales
 
AngularJS - What is it & Why is it awesome ? (with demos)
Gary Arora
 
Front end development with Angular JS
Bipin
 
Introduction to single page application with angular js
Mindfire Solutions
 
AngularJS Beginners Workshop
Sathish VJ
 
Angular js
Manav Prasad
 
5 angularjs features
Alexey (Mr_Mig) Migutsky
 
Angular js tutorial slides
samhelman
 
Introduction to Angularjs
Manish Shekhawat
 
Angular js PPT
Imtiyaz Ahmad Khan
 
Introduction to AngularJS
Jussi Pohjolainen
 
Angularjs architecture
Michael He
 
Angular js presentation at Datacom
David Xi Peng Yang
 
Getting Started with Angular JS
Akshay Mathur
 
Introduction of angular js
Tamer Solieman
 
Introduction to Angular js 2.0
Nagaraju Sangam
 
Introduction to Angular JS
Santhosh Kumar Srinivasan
 
AngularJS One Day Workshop
Shyam Seshadri
 
Introduction to AngularJS
Aldo Pizzagalli
 
The AngularJS way
Boyan Mihaylov
 

Viewers also liked (20)

PPTX
AngularJS Architecture
Eyal Vardi
 
PPTX
Angular Deep Directive
Henry Tao
 
PPTX
AngularJs presentation
Phan Tuan
 
PDF
BUILDING WEB APPS WITH ASP.NET MVC AND NOSQL
Michael Kennedy
 
PDF
Basic powershell scripts
MOHD TAHIR
 
PPTX
Windows storemindcrcaker23rdmarch
Dhananjay Kumar
 
PDF
Backup and Restore SQL Server Databases in Microsoft Azure
Datavail
 
PPTX
RESTEasy
Khushbu Joshi
 
DOCX
Salmon
ebanreb07
 
PDF
III - Better angularjs
WebF
 
PDF
Custom AngularJS Directives
yprodev
 
PPTX
Building Cross Platform Mobile Apps
Shailendra Chauhan
 
PPTX
AngularJS custom directive
Nascenia IT
 
PDF
Building Custom AngularJS Directives - A Step-by-Step Guide - Dan Wahlin | Fa...
FalafelSoftware
 
PPTX
Scope in AngularJs
Thien To
 
PPTX
REST Easy with AngularJS - ng-grid CRUD EXAMPLE
reneechemel
 
PPTX
Web Applications Development with MEAN Stack
Shailendra Chauhan
 
PDF
ASP.NET MVC Interview Questions and Answers by Shailendra Chauhan
Shailendra Chauhan
 
PDF
Voorhoede - Front-end architecture
Jasper Moelker
 
AngularJS Architecture
Eyal Vardi
 
Angular Deep Directive
Henry Tao
 
AngularJs presentation
Phan Tuan
 
BUILDING WEB APPS WITH ASP.NET MVC AND NOSQL
Michael Kennedy
 
Basic powershell scripts
MOHD TAHIR
 
Windows storemindcrcaker23rdmarch
Dhananjay Kumar
 
Backup and Restore SQL Server Databases in Microsoft Azure
Datavail
 
RESTEasy
Khushbu Joshi
 
Salmon
ebanreb07
 
III - Better angularjs
WebF
 
Custom AngularJS Directives
yprodev
 
Building Cross Platform Mobile Apps
Shailendra Chauhan
 
AngularJS custom directive
Nascenia IT
 
Building Custom AngularJS Directives - A Step-by-Step Guide - Dan Wahlin | Fa...
FalafelSoftware
 
Scope in AngularJs
Thien To
 
REST Easy with AngularJS - ng-grid CRUD EXAMPLE
reneechemel
 
Web Applications Development with MEAN Stack
Shailendra Chauhan
 
ASP.NET MVC Interview Questions and Answers by Shailendra Chauhan
Shailendra Chauhan
 
Voorhoede - Front-end architecture
Jasper Moelker
 
Ad

Similar to Step by Step - AngularJS (20)

PPTX
Basics of AngularJS
Filip Janevski
 
PPTX
Angular workshop - Full Development Guide
Nitin Giri
 
PDF
Angular.js Primer in Aalto University
SC5.io
 
PPTX
Single Page Applications Workshop Part II: Single Page Applications using Ang...
Jalal Mostafa
 
PPSX
Angular js
Arun Somu Panneerselvam
 
PPTX
Introduction to AngularJs
murtazahaveliwala
 
PPTX
Angular js
Baldeep Sohal
 
PPTX
Intoduction to Angularjs
Gaurav Agrawal
 
PPTX
ANGULARJS introduction components services and directives
SanthoshB77
 
PPTX
Intro to AngularJs
SolTech, Inc.
 
PPTX
Angular Presentation
Adam Moore
 
PDF
Workshop 12: AngularJS Parte I
Visual Engineering
 
PDF
AngularJS Workshop
Gianluca Cacace
 
PDF
AngularJS Basics
Ravi Mone
 
PPTX
Dive into Angular, part 1: Introduction
Oleksii Prohonnyi
 
PPTX
Learning AngularJS - Complete coverage of AngularJS features and concepts
Suresh Patidar
 
PPTX
Angular js 1.3 presentation for fed nov 2014
Sarah Hudson
 
PDF
AngularJS Basic Training
Cornel Stefanache
 
PDF
AngularJS in practice
Eugene Fidelin
 
PPTX
angularJs Workshop
Ran Wahle
 
Basics of AngularJS
Filip Janevski
 
Angular workshop - Full Development Guide
Nitin Giri
 
Angular.js Primer in Aalto University
SC5.io
 
Single Page Applications Workshop Part II: Single Page Applications using Ang...
Jalal Mostafa
 
Introduction to AngularJs
murtazahaveliwala
 
Angular js
Baldeep Sohal
 
Intoduction to Angularjs
Gaurav Agrawal
 
ANGULARJS introduction components services and directives
SanthoshB77
 
Intro to AngularJs
SolTech, Inc.
 
Angular Presentation
Adam Moore
 
Workshop 12: AngularJS Parte I
Visual Engineering
 
AngularJS Workshop
Gianluca Cacace
 
AngularJS Basics
Ravi Mone
 
Dive into Angular, part 1: Introduction
Oleksii Prohonnyi
 
Learning AngularJS - Complete coverage of AngularJS features and concepts
Suresh Patidar
 
Angular js 1.3 presentation for fed nov 2014
Sarah Hudson
 
AngularJS Basic Training
Cornel Stefanache
 
AngularJS in practice
Eugene Fidelin
 
angularJs Workshop
Ran Wahle
 
Ad

Recently uploaded (20)

PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Predicting the unpredictable: re-engineering recommendation algorithms for fr...
Speck&Tech
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
Why Orbit Edge Tech is a Top Next JS Development Company in 2025
mahendraalaska08
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PPTX
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
PDF
Smart Air Quality Monitoring with Serrax AQM190 LITE
SERRAX TECHNOLOGIES LLP
 
PPTX
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
PDF
July Patch Tuesday
Ivanti
 
PDF
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Predicting the unpredictable: re-engineering recommendation algorithms for fr...
Speck&Tech
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
Why Orbit Edge Tech is a Top Next JS Development Company in 2025
mahendraalaska08
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
Smart Air Quality Monitoring with Serrax AQM190 LITE
SERRAX TECHNOLOGIES LLP
 
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
July Patch Tuesday
Ivanti
 
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 

Step by Step - AngularJS

  • 1. Step by Step - AngularJS Dhananjay Kumar @debug_mode http://debugmode.net
  • 2. Agenda • Setting up Visual Studio as development environment • Getting started with AngularJS • $scope object and $rootScope object • Controllers and nested controllers • Services using service() method and factory() method • CRUD operation • Directives and creating basic Custom Directive • Scopes in directives • Isolated scope with local properties
  • 3. Give Away Tweet your experience about webinar using the hashtag #Infragistics or tag @infragistics to win cool goodies from us. If you are in Delhi/NCR , join us for Infragistics Day tomorrow. Its free workshop on AngularJS in Noida
  • 4. I am Dhananjay Kumar Infragistics Evangelist 6 times Microsoft MVP C-Sharp Corner Mentor @debug_mode [email protected] http://debugmode.net
  • 5. AngularJS Client side framework Single Page Application Business logic can be unit tested with ease Suitable for TDD To create dynamic web page Can we used with any server side technology
  • 6. main components of AngularJS Controllers Scopes Services Directives Routing Module Views Data Binding Filters
  • 7. Let us start with writing some AngularJS code
  • 8. $scope object view controllerTalk to each other using $scope
  • 9. $scope object $scope serves as the glue between controller and the view View and the controller both have access of the $scope object $scope pass data and behaviour to the view from the controller $scope provides execution context for the DOM and the expression The $scope object is plain JavaScript object. We can add and remove property as required For each controller creation a new $scope gets created
  • 10. $rootScope object $rootScope is top most scope on DOM element with ng-app directive In angular all the $scope are created with prototypal inheritance $scope has access to their parent $scope object and eventually to $rootScope object $rootScope object is parent of all the $scope object
  • 11. Controller in AngularJS Controller is a JavaScript constructor functions which contains data and the business logic Controller name should start from the capital letter and ends with controller. For example AuthorController It takes $scope òbject as parameter and attach data and behaviour to the $scope object Do not use controller to manipulate DOM or create custom filter
  • 12. Controller in AngularJS Each controller has its own child $scope object Whenever new controller gets created on the view angular pass a $scope object to it Controller can be attached to different level of DOM. Hence it creates $scope hierarchy $scope of the child controller can access and override data and behaviour of the parent controller
  • 13. Let us write code to understand • Controller and $scope object • Controller Hierarchy • Nested Controller
  • 14. Service in AngularJS Service organize and share data and functions across the application Service provides methods to communicate data across the controllers in a consistent way Service is a singleton object and it gets instantiated only once per application using the $injector Services are lazy instantiated and gets created when angular app components need it There are many inbuilt services like $http, $q can be used as it is There are five different ways a custom service can be created
  • 15. Service creation service() factory() provider() value() constant() Service in AngularJS
  • 16. Let us write code to understand • Services using service() method • Services using factory() method • Using $http service to perform AJAX operation • Perform CRUD operation
  • 17. Directives in AngularJS It attaches specified behaviour to existing DOM elements or create new element Directives can modify the behaviour of a particular DOM element or add new custom element on the DOM Directive name must be provided in the camel case On the view directive can be used by separating the camel case name either using dash, colon, or underscore Combination of dash, underscore or colon can also be used If directive name myFirstDirective then on the view it can be used either as my-first- directive or my:first:directive or my_first_directive or my_first- directive or my-first:directive
  • 18. There are many built in directives available Some of them are ng-show ,ng- app,ng-controller etc Directives in AngularJS
  • 19. Custom Directives can be used As an attribute – set restrict value to A As a custom element – set restrict value to E As a comment – set restrict value to M As a class- set restrict value to C
  • 20. Scopes in Directives Shared Scope Inherited Scope Isolated Scope
  • 21. Scopes in Directives • Directive shared scope with the enclosed controller • It is default scope Shared Scope • Directive inherit scope of the enclosed controller Inherited Scope • Directive and controller has different scope • Data is not shared Isolated Scope
  • 24. Let us write code to understand • Create custom directive • Using different scopes • Using local scope properties in isolated scope
  • 26. Summary • Setting up Visual Studio as development environment • Getting started with AngularJS • $scope object and $rootScope object • Controllers and nested controllers • Services using service() method and factory() method • CRUD operation • Directives and Creating basic Custom Directive • Scopes in directives • Isolated scope with local properties
  • 27. What Infragistics can offer you? • We welcome all of you to take advantage of a FREE 30 Day Trial by downloading the product at: http://www.infragistics.com/products/ultimate/download • Please reach out to us at [email protected] for any follow up questions you may have. We welcome the opportunity to assist you.