SlideShare a Scribd company logo
Introduction to
About me
Full-stack dev
@dhyegofernando
Angular JS Introduction
Angular JS Introduction
The beginning
http://web.archive.org/web/20050428014715/http://www.youtube.com/
2005
Angular JS Introduction
SPA
Single Page Application
Angular JS Introduction
“AngularJS: a kind of HTML extension.”
D
D
D
Data-binding
Dependency Injection
Directives
Data-binding
$('#input-name').on('change', function() {
$('#greeting-name').text(this.value);
});
#input-name
#greeting-name
Angular JS Introduction
Angular JS Introduction
model
module bootstrap
template expression
<div ng-app>
<div>
<label>Name:</label>
<input type="text" ng-model="yourName">
<hr>
<h1>Hello {{yourName}}!</h1>
</div>
</div>
Angular JS Introduction
Dependency Injection
controller bootstrap
<div ng-app="app" ng-controller="GreetingController">
<form ng-submit="greet()">
<input type="text" ng-model="name">
<button type="submit">Greet</button>
</form>
</div>
module application
dependency
injection
...service
3rd's module
service
angular.module('app', ['alerter'])
.controller('GreetingController', function($scope, Alerter) {
$scope.name = 'John Doe';
$scope.greet = function() {
Alerter.show('Hello ' + $scope.name);
};
});
angular.module('alerter', [])
.factory('Alerter', function($window) {
return {
show: function(string) {
$window.alert(string);
}
};
});
Directives
Tab Component
Non-semantic way
bootstrap
plugin element<div id="tab">
<ul class="tab-head">
<li><a href="#content-1">Title 1</a></li>
<li><a href="#content-2">Title 2</a></li>
<li><a href="#content-3">Title 3</a></li>
</ul>
<div id="content-1" class="tab-content">
<p>Content 1 goes here</p>
</div>
<div id="content-2" class="tab-content">
<p>Content 2 goes here</p>
</div>
<div id="content-3" class="tab-content">
<p>Content 3 goes here</p>
</div>
</div>
$('#tab').tab();
Angular JS Introduction
Semantic way
directives bootstrap
...
tab components
<tabset>
<tab heading="Title 1">
<p>Content 1 goes here</p>
</tab>
<tab heading="Title 2">
<p>Content 2 goes here</p>
</tab>
<tab heading="Title 3">
<p>Content 3 goes here</p>
</tab>
</tabset>
angular.module('tab')
.directive('tabset', function() { // ... })
.directive('tab', function() { // ... });
Angular JS Introduction
Hello {{ world }}
load angular script
bootstrap application
set model
template
<!DOCTYPE html>
<html lang="en" ng-app>
<head>
<meta charset="UTF-8">
<title>Hello World</title>
</head>
<body>
<input type="text" ng-model="name">
<h1>Hello {{ name }}</h1>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.15/
angular.min.js"></script>
</body>
</html>
Some golden tips
Don't reinvent the wheel
...use 3rd's components
✓ nice documentation
✓ great tests suit
✓ maintained
✓ best practices
where to find
components?
http://ngmodules.org/
http://bower.io/
how to use
components?
install the component
bower install --save angular-material
load the component scripts
<link rel="stylesheet" href="angular-material.min.css"
rel="stylesheet">
<script src="angular-material.min.js"></script>
load the component module
angular.module('app', ['ngMaterial']);
follow the style guide
https://github.com/johnpapa/angular-styleguide
write tests
http://karma-runner.github.io/
http://angular.github.io/protractor/
use generators
http://yeoman.io/
https://github.com/yeoman/generator-angular
putting it all together
https://github.com/dhyegofernando/shopping-list-app
Shopping list app
keep learning
https://docs.angularjs.org/api
with videos
https://www.youtube.com/user/angularjs/
https://egghead.io/
with blogs
http://www.johnpapa.net/
http://briantford.com/
http://toddmotto.com/
with books
AngularJS - Up & Running
https://www.ng-book.com/
with tools
http://ng-inspector.org/
https://github.com/angular/angularjs-batarang
and more...
Angular 2
https://angular.io/
https://angular.io/docs/js/latest/quickstart.html
Questions?
Now it's up to you
Thank you
@dhyegofernando

More Related Content

PPT
Angular Seminar-js
Mindfire Solutions
 
PPTX
Angular js
ronhall13
 
PDF
Angular from Scratch
Christian Lilley
 
PPTX
Introduction to Angular JS
Santhosh Kumar Srinivasan
 
PPTX
Angular js for beginners
Munir Hoque
 
PDF
AngularJS
Hiten Pratap Singh
 
PPTX
Angular js
Dinusha Nandika
 
PPTX
Introduction to AngularJS Framework
Raveendra R
 
Angular Seminar-js
Mindfire Solutions
 
Angular js
ronhall13
 
Angular from Scratch
Christian Lilley
 
Introduction to Angular JS
Santhosh Kumar Srinivasan
 
Angular js for beginners
Munir Hoque
 
Angular js
Dinusha Nandika
 
Introduction to AngularJS Framework
Raveendra R
 

What's hot (20)

PDF
AngularJS Best Practices
Betclic Everest Group Tech Team
 
PDF
Angular js
Knoldus Inc.
 
PPTX
Front end development with Angular JS
Bipin
 
PPTX
Introduction to AngularJS
David Parsons
 
PPTX
What's new in Angular 2?
Alfred Jett Grandeza
 
PPTX
Introduction to Angular js 2.0
Nagaraju Sangam
 
PPTX
Angularjs PPT
Amit Baghel
 
PPTX
Why angular js Framework
Sakthi Bro
 
DOCX
Different way to share data between controllers in angular js
codeandyou forums
 
PDF
WJAX 2012 - Web Apps With AngularJS
Philipp Burgmer
 
PPTX
Angular js architecture (v1.4.8)
Gabi Costel Lapusneanu
 
PPTX
AngularJS intro
dizabl
 
PDF
Beyond AngularJS: Best practices and more
Ari Lerner
 
PPTX
AngularJS = Browser applications on steroids
Maurice De Beijer [MVP]
 
PPTX
Valentine with AngularJS
Vidyasagar Machupalli
 
PPTX
AngularJs presentation
Phan Tuan
 
DOCX
Angular.js interview questions
codeandyou forums
 
PPTX
AngularJs (1.x) Presentation
Raghubir Singh
 
PPTX
Will your code blend? : Toronto Code Camp 2010 : Barry Gervin
Barry Gervin
 
AngularJS Best Practices
Betclic Everest Group Tech Team
 
Angular js
Knoldus Inc.
 
Front end development with Angular JS
Bipin
 
Introduction to AngularJS
David Parsons
 
What's new in Angular 2?
Alfred Jett Grandeza
 
Introduction to Angular js 2.0
Nagaraju Sangam
 
Angularjs PPT
Amit Baghel
 
Why angular js Framework
Sakthi Bro
 
Different way to share data between controllers in angular js
codeandyou forums
 
WJAX 2012 - Web Apps With AngularJS
Philipp Burgmer
 
Angular js architecture (v1.4.8)
Gabi Costel Lapusneanu
 
AngularJS intro
dizabl
 
Beyond AngularJS: Best practices and more
Ari Lerner
 
AngularJS = Browser applications on steroids
Maurice De Beijer [MVP]
 
Valentine with AngularJS
Vidyasagar Machupalli
 
AngularJs presentation
Phan Tuan
 
Angular.js interview questions
codeandyou forums
 
AngularJs (1.x) Presentation
Raghubir Singh
 
Will your code blend? : Toronto Code Camp 2010 : Barry Gervin
Barry Gervin
 
Ad

Similar to Angular JS Introduction (20)

PPTX
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
murtazahaveliwala
 
PDF
Master AngularJS
Fabien Vauchelles
 
PDF
Introduction to AngularJS
Marco Vito Moscaritolo
 
PPT
AngularJS Mobile Warsaw 20-10-2014
Dariusz Kalbarczyk
 
PDF
Get AngularJS Started!
Dzmitry Ivashutsin
 
PPTX
Angular Js Get Started - Complete Course
EPAM Systems
 
PDF
Data binding 入門淺談
awonwon
 
PPTX
AngularJs
syam kumar kk
 
PDF
Jquery Cheatsheet
Daniel Downs
 
PDF
Pengenalan AngularJS
Edi Santoso
 
PPTX
Angular js
ParmarAnisha
 
PDF
Modular Angular JS
Dhyego Fernando
 
PDF
Introduction to angular js july 6th 2014
Simona Clapan
 
PPTX
Introduction à AngularJS
Nicolas PENNEC
 
PDF
Vue.js for beginners
Julio Bitencourt
 
PPTX
PPT ANGULAR.JS 2024 TECH WINTER BREAK 2024 GDG PEC
HARISHK755873
 
PDF
Knockout mvvm-m5-slides
MasterCode.vn
 
DOCX
Angular js
prasaddammalapati
 
PDF
Course CodeSchool - Shaping up with Angular.js
Vinícius de Moraes
 
PPTX
Custom directive and scopes
jagriti srivastava
 
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
murtazahaveliwala
 
Master AngularJS
Fabien Vauchelles
 
Introduction to AngularJS
Marco Vito Moscaritolo
 
AngularJS Mobile Warsaw 20-10-2014
Dariusz Kalbarczyk
 
Get AngularJS Started!
Dzmitry Ivashutsin
 
Angular Js Get Started - Complete Course
EPAM Systems
 
Data binding 入門淺談
awonwon
 
AngularJs
syam kumar kk
 
Jquery Cheatsheet
Daniel Downs
 
Pengenalan AngularJS
Edi Santoso
 
Angular js
ParmarAnisha
 
Modular Angular JS
Dhyego Fernando
 
Introduction to angular js july 6th 2014
Simona Clapan
 
Introduction à AngularJS
Nicolas PENNEC
 
Vue.js for beginners
Julio Bitencourt
 
PPT ANGULAR.JS 2024 TECH WINTER BREAK 2024 GDG PEC
HARISHK755873
 
Knockout mvvm-m5-slides
MasterCode.vn
 
Angular js
prasaddammalapati
 
Course CodeSchool - Shaping up with Angular.js
Vinícius de Moraes
 
Custom directive and scopes
jagriti srivastava
 
Ad

Recently uploaded (20)

PPTX
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
PDF
Why Use Open Source Reporting Tools for Business Intelligence.pdf
Varsha Nayak
 
PPT
Order to Cash Lifecycle Overview R12 .ppt
nbvreddy229
 
PDF
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
PPTX
Visualising Data with Scatterplots in IBM SPSS Statistics.pptx
Version 1 Analytics
 
PDF
Jenkins: An open-source automation server powering CI/CD Automation
SaikatBasu37
 
PDF
Microsoft Teams Essentials; The pricing and the versions_PDF.pdf
Q-Advise
 
PDF
QAware_Mario-Leander_Reimer_Architecting and Building a K8s-based AI Platform...
QAware GmbH
 
PPTX
TestNG for Java Testing and Automation testing
ssuser0213cb
 
PPTX
Odoo Integration Services by Candidroot Solutions
CandidRoot Solutions Private Limited
 
DOCX
The Five Best AI Cover Tools in 2025.docx
aivoicelabofficial
 
PDF
A REACT POMODORO TIMER WEB APPLICATION.pdf
Michael624841
 
PDF
Multi-factor Authentication (MFA) requirement for Microsoft 365 Admin Center_...
Q-Advise
 
PPTX
Role Of Python In Programing Language.pptx
jaykoshti048
 
PPTX
AZ900_SLA_Pricing_2025_LondonIT (1).pptx
chumairabdullahph
 
PDF
Wondershare Filmora 14.5.20.12999 Crack Full New Version 2025
gsgssg2211
 
PDF
Bandai Playdia The Book - David Glotz
BluePanther6
 
PDF
Become an Agentblazer Champion Challenge Kickoff
Dele Amefo
 
PDF
Exploring AI Agents in Process Industries
amoreira6
 
PDF
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
ESUG
 
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
Why Use Open Source Reporting Tools for Business Intelligence.pdf
Varsha Nayak
 
Order to Cash Lifecycle Overview R12 .ppt
nbvreddy229
 
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
Visualising Data with Scatterplots in IBM SPSS Statistics.pptx
Version 1 Analytics
 
Jenkins: An open-source automation server powering CI/CD Automation
SaikatBasu37
 
Microsoft Teams Essentials; The pricing and the versions_PDF.pdf
Q-Advise
 
QAware_Mario-Leander_Reimer_Architecting and Building a K8s-based AI Platform...
QAware GmbH
 
TestNG for Java Testing and Automation testing
ssuser0213cb
 
Odoo Integration Services by Candidroot Solutions
CandidRoot Solutions Private Limited
 
The Five Best AI Cover Tools in 2025.docx
aivoicelabofficial
 
A REACT POMODORO TIMER WEB APPLICATION.pdf
Michael624841
 
Multi-factor Authentication (MFA) requirement for Microsoft 365 Admin Center_...
Q-Advise
 
Role Of Python In Programing Language.pptx
jaykoshti048
 
AZ900_SLA_Pricing_2025_LondonIT (1).pptx
chumairabdullahph
 
Wondershare Filmora 14.5.20.12999 Crack Full New Version 2025
gsgssg2211
 
Bandai Playdia The Book - David Glotz
BluePanther6
 
Become an Agentblazer Champion Challenge Kickoff
Dele Amefo
 
Exploring AI Agents in Process Industries
amoreira6
 
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
ESUG
 

Angular JS Introduction