SlideShare uma empresa Scribd logo
Criando Serviços com AngularJS
Rodrigo Branas – @rodrigobranas - http://www.agilecode.com.br
Rodrigo Branas
rodrigo.branas@agilecode.com.br
http://www.agilecode.com.br
• Desenvolvendo Software na Gennera
• Criando treinamentos na Agile Code
• Escrevendo na Java Magazine e PacktPub
• Palestrando sobre desenvolvimento de
software em eventos, universidades e
empresas
Certificações
Formação Acadêmica
Ciências da Computação – UFSC
Gerenciamento de Projetos - FGV
SCJA, SCJP, SCJD, SCWCD, SCBCD, PMP, MCP e CSM
Experiência
Há mais de 12 anos desenvolvendo software na
plataforma Java com as empresas: EDS, HP, NET,
Citibank, GM, Dígitro, Softplan, OnCast, Senai,
VALE, RBS, Unimed, Globalcode, V.Office, Suntech,
WPlex e Gennera.
• Há mais de 5 anos liderando pessoas.
• Mais de 2000 horas em sala de aula.
• Mais de 100 apresentações em eventos.
• 6 artigos escritos para revistas.
• 1 livro.
• Mais de 500 profissionais treinados.
• Criação de 22 palestras.
• Criação de 10 treinamentos.
• Criação de mais de 3.000 slides.
O que realmente me motiva?
Quando devemos criar serviços?
Criando um serviço para interagir
com a API REST
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
factory
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory();
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI");
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI", function () {
26. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI", function ($http) {
26. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI", function ($http) {
26. var _getContatos = function () {
27. };
28. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI", function ($http) {
26. var _getContatos = function () {
27. return $http.get('/contatos');
28. };
29. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI", function ($http) {
26. var _getContatos = function () {
27. return $http.get('/contatos');
28. };
29. return {
30. };
31. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI", function ($http) {
26. var _getContatos = function () {
27. return $http.get('/contatos');
28. };
29. return {
30. getContatos: _getContatos
31. };
32. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI", function ($http) {
26. var _getContatos = function () {
27. return $http.get('/contatos');
28. };
29. return {
30. getContatos: _getContatos
31. };
32. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI", function ($http) {
26. var _getContatos = function () {
27. return $http.get('/contatos');
28. };
29. return {
30. getContatos: _getContatos
31. };
32. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI", function ($http) {
26. var _getContatos = function () {
27. return $http.get('/contatos');
28. };
29. return {
30. getContatos: _getContatos
31. };
32. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. $http.get('/contatos').success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI", function ($http) {
26. var _getContatos = function () {
27. return $http.get('/contatos');
28. };
29. return {
30. getContatos: _getContatos
31. };
32. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. .success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI", function ($http) {
26. var _getContatos = function () {
27. return $http.get('/contatos');
28. };
29. return {
30. getContatos: _getContatos
31. };
32. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. ListaTelefonicaAPI.getContatos().success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI", function ($http) {
26. var _getContatos = function () {
27. return $http.get('/contatos');
28. };
29. return {
30. getContatos: _getContatos
31. };
32. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. ListaTelefonicaAPI.getContatos().success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.factory("ListaTelefonicaAPI", function ($http) {
26. var _getContatos = function () {
27. return $http.get('/contatos');
28. };
29. return {
30. getContatos: _getContatos
31. };
32. });
1. var app = angular.module("listaTelefonica", ['ngRoute']);
2.
3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) {
4. $scope.app = "Lista Telefônica";
5. $scope.carregarContatos = function () {
6. ListaTelefonicaAPI.getContatos().success(function (contatos) {
7. $scope.listaTelefonica = contatos;
8. });
9. };
10. $scope.carregarOperadoras = function () {
11. $http.get('/operadoras').success(function (operadoras) {
12. $scope.operadoras = operadoras;
13. });
14. };
15. $scope.adicionarContato = function (contato) {
16. $http.post('/contatos', contato).success(function () {
17. $scope.carregarContatos();
18. });
19. delete $scope.contato;
20. };
21. $scope.carregarContatos();
22. $scope.carregarOperadoras();
23. });
24.
25. app.service("ListaTelefonicaAPI", function ($http) {
26. this.getContatos = function () {
27. return $http.get('/contatos');
28. };
29. });

Mais conteúdo relacionado

Mais procurados

A evolução do AngularJS
A evolução do AngularJSA evolução do AngularJS
A evolução do AngularJS
Rodrigo Branas
 
Node.js - #6 - Core Modules - net - Rodrigo Branas
Node.js - #6 - Core Modules - net - Rodrigo BranasNode.js - #6 - Core Modules - net - Rodrigo Branas
Node.js - #6 - Core Modules - net - Rodrigo Branas
Rodrigo Branas
 
AngularJS - 10 passos para aprender a criar suas directivas
AngularJS - 10 passos para aprender a criar suas directivasAngularJS - 10 passos para aprender a criar suas directivas
AngularJS - 10 passos para aprender a criar suas directivas
Janderson Fernandes Cardoso
 
Introdução ao AngularJS
Introdução ao AngularJSIntrodução ao AngularJS
Introdução ao AngularJS
Rodrigo Branas
 
Desenvolvimento Front end (AngularJS e Bootstrap)
Desenvolvimento Front end (AngularJS e Bootstrap)Desenvolvimento Front end (AngularJS e Bootstrap)
Desenvolvimento Front end (AngularJS e Bootstrap)
Julian Cesar
 
AngularJS Abraçando o MVC Client-Side
AngularJS Abraçando o MVC Client-SideAngularJS Abraçando o MVC Client-Side
AngularJS Abraçando o MVC Client-Side
Sergio Azevedo
 
Spa com angular js flisol 2015 - aquidauana ms
Spa com angular js   flisol 2015 - aquidauana msSpa com angular js   flisol 2015 - aquidauana ms
Spa com angular js flisol 2015 - aquidauana ms
Paulo Roberto Sampaio Bezerra
 
Desenvolvimento de Aplicações Web AngularJS no Contexto da IoT
Desenvolvimento de Aplicações Web AngularJS no Contexto da IoTDesenvolvimento de Aplicações Web AngularJS no Contexto da IoT
Desenvolvimento de Aplicações Web AngularJS no Contexto da IoT
Rodrigo Fortes
 
Zend Framework 1.11
Zend Framework 1.11Zend Framework 1.11
Zend Framework 1.11
Cezar Souza
 
RubyConfBr 2015 - Rails & Javascript: faça isso direito
RubyConfBr 2015 - Rails & Javascript: faça isso direitoRubyConfBr 2015 - Rails & Javascript: faça isso direito
RubyConfBr 2015 - Rails & Javascript: faça isso direito
Cezinha Anjos
 
JavaScript - A Linguagem
JavaScript - A LinguagemJavaScript - A Linguagem
JavaScript - A Linguagem
Sérgio Souza Costa
 
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)
Rafael Ponte
 
Apresentação angular js
Apresentação angular jsApresentação angular js
Apresentação angular js
Raphael Ramos Monteiro
 
Java script aula 10 - angularjs
Java script   aula 10 - angularjsJava script   aula 10 - angularjs
Java script aula 10 - angularjs
Cristiano Pires Martins
 
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
Cezar Souza
 
Google apps script - Parte 2
Google apps script - Parte 2Google apps script - Parte 2
Google apps script - Parte 2
Sérgio Souza Costa
 
Java script - funções
Java script - funçõesJava script - funções
Java script - funções
Cristiano Pires Martins
 
Spring MVC Framework
Spring MVC FrameworkSpring MVC Framework
Spring MVC Framework
elliando dias
 
Java script aula 02 - operadores
Java script   aula 02 - operadoresJava script   aula 02 - operadores
Java script aula 02 - operadores
Cristiano Pires Martins
 
Aula javascript
Aula  javascriptAula  javascript
Aula javascript
Gabriel Moura
 

Mais procurados (20)

A evolução do AngularJS
A evolução do AngularJSA evolução do AngularJS
A evolução do AngularJS
 
Node.js - #6 - Core Modules - net - Rodrigo Branas
Node.js - #6 - Core Modules - net - Rodrigo BranasNode.js - #6 - Core Modules - net - Rodrigo Branas
Node.js - #6 - Core Modules - net - Rodrigo Branas
 
AngularJS - 10 passos para aprender a criar suas directivas
AngularJS - 10 passos para aprender a criar suas directivasAngularJS - 10 passos para aprender a criar suas directivas
AngularJS - 10 passos para aprender a criar suas directivas
 
Introdução ao AngularJS
Introdução ao AngularJSIntrodução ao AngularJS
Introdução ao AngularJS
 
Desenvolvimento Front end (AngularJS e Bootstrap)
Desenvolvimento Front end (AngularJS e Bootstrap)Desenvolvimento Front end (AngularJS e Bootstrap)
Desenvolvimento Front end (AngularJS e Bootstrap)
 
AngularJS Abraçando o MVC Client-Side
AngularJS Abraçando o MVC Client-SideAngularJS Abraçando o MVC Client-Side
AngularJS Abraçando o MVC Client-Side
 
Spa com angular js flisol 2015 - aquidauana ms
Spa com angular js   flisol 2015 - aquidauana msSpa com angular js   flisol 2015 - aquidauana ms
Spa com angular js flisol 2015 - aquidauana ms
 
Desenvolvimento de Aplicações Web AngularJS no Contexto da IoT
Desenvolvimento de Aplicações Web AngularJS no Contexto da IoTDesenvolvimento de Aplicações Web AngularJS no Contexto da IoT
Desenvolvimento de Aplicações Web AngularJS no Contexto da IoT
 
Zend Framework 1.11
Zend Framework 1.11Zend Framework 1.11
Zend Framework 1.11
 
RubyConfBr 2015 - Rails & Javascript: faça isso direito
RubyConfBr 2015 - Rails & Javascript: faça isso direitoRubyConfBr 2015 - Rails & Javascript: faça isso direito
RubyConfBr 2015 - Rails & Javascript: faça isso direito
 
JavaScript - A Linguagem
JavaScript - A LinguagemJavaScript - A Linguagem
JavaScript - A Linguagem
 
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)
 
Apresentação angular js
Apresentação angular jsApresentação angular js
Apresentação angular js
 
Java script aula 10 - angularjs
Java script   aula 10 - angularjsJava script   aula 10 - angularjs
Java script aula 10 - angularjs
 
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
 
Google apps script - Parte 2
Google apps script - Parte 2Google apps script - Parte 2
Google apps script - Parte 2
 
Java script - funções
Java script - funçõesJava script - funções
Java script - funções
 
Spring MVC Framework
Spring MVC FrameworkSpring MVC Framework
Spring MVC Framework
 
Java script aula 02 - operadores
Java script   aula 02 - operadoresJava script   aula 02 - operadores
Java script aula 02 - operadores
 
Aula javascript
Aula  javascriptAula  javascript
Aula javascript
 

Destaque

Utilizando diretivas com AngularJS
Utilizando diretivas com AngularJSUtilizando diretivas com AngularJS
Utilizando diretivas com AngularJS
Rodrigo Branas
 
Criando Filtros com AngularJS
Criando Filtros com AngularJSCriando Filtros com AngularJS
Criando Filtros com AngularJS
Rodrigo Branas
 
HTTP Interceptors com AngularJS
HTTP Interceptors com AngularJSHTTP Interceptors com AngularJS
HTTP Interceptors com AngularJS
Rodrigo Branas
 
Validando Formulários com AngularJS
Validando Formulários com AngularJSValidando Formulários com AngularJS
Validando Formulários com AngularJS
Rodrigo Branas
 
Node.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo BranasNode.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo Branas
Rodrigo Branas
 
Node.js - #2 - Sistema de Módulos - Rodrigo Branas
Node.js - #2 - Sistema de Módulos - Rodrigo BranasNode.js - #2 - Sistema de Módulos - Rodrigo Branas
Node.js - #2 - Sistema de Módulos - Rodrigo Branas
Rodrigo Branas
 
Criando aplicações Single-Page com AngularJS
Criando aplicações Single-Page com AngularJSCriando aplicações Single-Page com AngularJS
Criando aplicações Single-Page com AngularJS
Rodrigo Branas
 
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Rodrigo Branas
 
Domain-Driven Design
Domain-Driven DesignDomain-Driven Design
Domain-Driven Design
Rodrigo Branas
 
Node.js - #3 - Global Objects - Rodrigo Branas
Node.js - #3 - Global Objects - Rodrigo BranasNode.js - #3 - Global Objects - Rodrigo Branas
Node.js - #3 - Global Objects - Rodrigo Branas
Rodrigo Branas
 
Node.js - #4 - Timers - Rodrigo Branas
Node.js - #4 - Timers - Rodrigo BranasNode.js - #4 - Timers - Rodrigo Branas
Node.js - #4 - Timers - Rodrigo Branas
Rodrigo Branas
 
#2 - Git - DAG
#2 - Git - DAG#2 - Git - DAG
#2 - Git - DAG
Rodrigo Branas
 
Node.js - #5 - Process - Rodrigo Branas
Node.js - #5 - Process - Rodrigo BranasNode.js - #5 - Process - Rodrigo Branas
Node.js - #5 - Process - Rodrigo Branas
Rodrigo Branas
 
Angular js com diretivas
Angular js com diretivasAngular js com diretivas
Angular js com diretivas
Matheus Lima
 
Apresentação AngularJS - Angular UI
Apresentação AngularJS - Angular UIApresentação AngularJS - Angular UI
Apresentação AngularJS - Angular UI
Cecília Rosa
 
Aplicando filtros com AngularJS
Aplicando filtros com AngularJSAplicando filtros com AngularJS
Aplicando filtros com AngularJS
Rodrigo Branas
 
Angular js
Angular jsAngular js
Angular js
Bruno Catão
 
Evoluindo a arquitetura de uma aplicação com AngularJS
Evoluindo a arquitetura de uma aplicação com AngularJSEvoluindo a arquitetura de uma aplicação com AngularJS
Evoluindo a arquitetura de uma aplicação com AngularJS
Rodrigo Branas
 
Grunt
GruntGrunt
Javascript Orientado a Objetos - Fisl12
Javascript Orientado a Objetos - Fisl12Javascript Orientado a Objetos - Fisl12
Javascript Orientado a Objetos - Fisl12
Emerson Macedo
 

Destaque (20)

Utilizando diretivas com AngularJS
Utilizando diretivas com AngularJSUtilizando diretivas com AngularJS
Utilizando diretivas com AngularJS
 
Criando Filtros com AngularJS
Criando Filtros com AngularJSCriando Filtros com AngularJS
Criando Filtros com AngularJS
 
HTTP Interceptors com AngularJS
HTTP Interceptors com AngularJSHTTP Interceptors com AngularJS
HTTP Interceptors com AngularJS
 
Validando Formulários com AngularJS
Validando Formulários com AngularJSValidando Formulários com AngularJS
Validando Formulários com AngularJS
 
Node.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo BranasNode.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo Branas
 
Node.js - #2 - Sistema de Módulos - Rodrigo Branas
Node.js - #2 - Sistema de Módulos - Rodrigo BranasNode.js - #2 - Sistema de Módulos - Rodrigo Branas
Node.js - #2 - Sistema de Módulos - Rodrigo Branas
 
Criando aplicações Single-Page com AngularJS
Criando aplicações Single-Page com AngularJSCriando aplicações Single-Page com AngularJS
Criando aplicações Single-Page com AngularJS
 
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
 
Domain-Driven Design
Domain-Driven DesignDomain-Driven Design
Domain-Driven Design
 
Node.js - #3 - Global Objects - Rodrigo Branas
Node.js - #3 - Global Objects - Rodrigo BranasNode.js - #3 - Global Objects - Rodrigo Branas
Node.js - #3 - Global Objects - Rodrigo Branas
 
Node.js - #4 - Timers - Rodrigo Branas
Node.js - #4 - Timers - Rodrigo BranasNode.js - #4 - Timers - Rodrigo Branas
Node.js - #4 - Timers - Rodrigo Branas
 
#2 - Git - DAG
#2 - Git - DAG#2 - Git - DAG
#2 - Git - DAG
 
Node.js - #5 - Process - Rodrigo Branas
Node.js - #5 - Process - Rodrigo BranasNode.js - #5 - Process - Rodrigo Branas
Node.js - #5 - Process - Rodrigo Branas
 
Angular js com diretivas
Angular js com diretivasAngular js com diretivas
Angular js com diretivas
 
Apresentação AngularJS - Angular UI
Apresentação AngularJS - Angular UIApresentação AngularJS - Angular UI
Apresentação AngularJS - Angular UI
 
Aplicando filtros com AngularJS
Aplicando filtros com AngularJSAplicando filtros com AngularJS
Aplicando filtros com AngularJS
 
Angular js
Angular jsAngular js
Angular js
 
Evoluindo a arquitetura de uma aplicação com AngularJS
Evoluindo a arquitetura de uma aplicação com AngularJSEvoluindo a arquitetura de uma aplicação com AngularJS
Evoluindo a arquitetura de uma aplicação com AngularJS
 
Grunt
GruntGrunt
Grunt
 
Javascript Orientado a Objetos - Fisl12
Javascript Orientado a Objetos - Fisl12Javascript Orientado a Objetos - Fisl12
Javascript Orientado a Objetos - Fisl12
 

Semelhante a Criando serviços com AngularJS

Evento Front End SP - Organizando o Javascript
 Evento Front End SP - Organizando o Javascript Evento Front End SP - Organizando o Javascript
Evento Front End SP - Organizando o Javascript
Michel Ribeiro
 
Flutter do zero a publicacao
Flutter do zero a publicacaoFlutter do zero a publicacao
Flutter do zero a publicacao
Cinthia Pineroli Galvão
 
Android Dev Conference 2017 - Arquitetura para projetos Android
 Android Dev Conference 2017 - Arquitetura para projetos Android Android Dev Conference 2017 - Arquitetura para projetos Android
Android Dev Conference 2017 - Arquitetura para projetos Android
iMasters
 
Introdução ao OpenLayers
Introdução ao OpenLayersIntrodução ao OpenLayers
Introdução ao OpenLayers
Fernando Quadro
 
Flutter do zero a publicacao
Flutter do zero a publicacaoFlutter do zero a publicacao
Flutter do zero a publicacao
Cinthia Pineroli Galvão
 
TDC2018SP | Trilha Mobile - Flutter: do zero a publicacao
TDC2018SP | Trilha Mobile - Flutter: do zero a publicacaoTDC2018SP | Trilha Mobile - Flutter: do zero a publicacao
TDC2018SP | Trilha Mobile - Flutter: do zero a publicacao
tdc-globalcode
 
Fazendo uma aplicação cliente/servidor (e algumas dicas...)
Fazendo uma aplicação cliente/servidor (e algumas dicas...)Fazendo uma aplicação cliente/servidor (e algumas dicas...)
Fazendo uma aplicação cliente/servidor (e algumas dicas...)
Makoto Miyagawa
 
Integração do Flex com PHP através do AMFPHP
Integração do Flex com PHP através do AMFPHPIntegração do Flex com PHP através do AMFPHP
Integração do Flex com PHP através do AMFPHP
elliando dias
 
TDC2013 SP - Criando Webservices ultra rápidos com PHP Phalcon e MongoDB
TDC2013 SP - Criando Webservices ultra rápidos com PHP Phalcon e MongoDBTDC2013 SP - Criando Webservices ultra rápidos com PHP Phalcon e MongoDB
TDC2013 SP - Criando Webservices ultra rápidos com PHP Phalcon e MongoDB
Luiz Gavinho
 
Programando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um FrameworkProgramando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um Framework
Pablo Dall'Oglio
 
Criando e consumindo Web Services (REST) com o CakePHP
Criando e consumindo Web Services (REST) com o CakePHPCriando e consumindo Web Services (REST) com o CakePHP
Criando e consumindo Web Services (REST) com o CakePHP
2km interativa!
 
TDC São Paulo 2015 - Interfaces Ricas com Rails e React.JS
TDC São Paulo 2015  - Interfaces Ricas com Rails e React.JSTDC São Paulo 2015  - Interfaces Ricas com Rails e React.JS
TDC São Paulo 2015 - Interfaces Ricas com Rails e React.JS
Rodrigo Urubatan
 
Flutter do zero a publicacao
Flutter do zero a publicacaoFlutter do zero a publicacao
Flutter do zero a publicacao
Cinthia Pineroli Galvão
 
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Thyago Maia
 
Introducao ao Spring Web MVC
Introducao ao Spring Web MVCIntroducao ao Spring Web MVC
Introducao ao Spring Web MVC
Eder Magalhães
 
2009 05 20 Floripa Flex
2009 05 20 Floripa Flex2009 05 20 Floripa Flex
2009 05 20 Floripa Flex
Eduardo Kraus
 
Workshop Node.js + MongoDB + Mongoose
Workshop Node.js + MongoDB + MongooseWorkshop Node.js + MongoDB + Mongoose
Workshop Node.js + MongoDB + Mongoose
Luiz Duarte
 
Google API
Google APIGoogle API
Google API
Howard Roatti
 
O que esperar do Zend Framework 3
O que esperar do Zend Framework 3O que esperar do Zend Framework 3
O que esperar do Zend Framework 3
Flávio Lisboa
 
Geolocalização em PHP - Google Places, Maps e Routes
Geolocalização em PHP - Google Places, Maps e RoutesGeolocalização em PHP - Google Places, Maps e Routes
Geolocalização em PHP - Google Places, Maps e Routes
Luis Gustavo Almeida
 

Semelhante a Criando serviços com AngularJS (20)

Evento Front End SP - Organizando o Javascript
 Evento Front End SP - Organizando o Javascript Evento Front End SP - Organizando o Javascript
Evento Front End SP - Organizando o Javascript
 
Flutter do zero a publicacao
Flutter do zero a publicacaoFlutter do zero a publicacao
Flutter do zero a publicacao
 
Android Dev Conference 2017 - Arquitetura para projetos Android
 Android Dev Conference 2017 - Arquitetura para projetos Android Android Dev Conference 2017 - Arquitetura para projetos Android
Android Dev Conference 2017 - Arquitetura para projetos Android
 
Introdução ao OpenLayers
Introdução ao OpenLayersIntrodução ao OpenLayers
Introdução ao OpenLayers
 
Flutter do zero a publicacao
Flutter do zero a publicacaoFlutter do zero a publicacao
Flutter do zero a publicacao
 
TDC2018SP | Trilha Mobile - Flutter: do zero a publicacao
TDC2018SP | Trilha Mobile - Flutter: do zero a publicacaoTDC2018SP | Trilha Mobile - Flutter: do zero a publicacao
TDC2018SP | Trilha Mobile - Flutter: do zero a publicacao
 
Fazendo uma aplicação cliente/servidor (e algumas dicas...)
Fazendo uma aplicação cliente/servidor (e algumas dicas...)Fazendo uma aplicação cliente/servidor (e algumas dicas...)
Fazendo uma aplicação cliente/servidor (e algumas dicas...)
 
Integração do Flex com PHP através do AMFPHP
Integração do Flex com PHP através do AMFPHPIntegração do Flex com PHP através do AMFPHP
Integração do Flex com PHP através do AMFPHP
 
TDC2013 SP - Criando Webservices ultra rápidos com PHP Phalcon e MongoDB
TDC2013 SP - Criando Webservices ultra rápidos com PHP Phalcon e MongoDBTDC2013 SP - Criando Webservices ultra rápidos com PHP Phalcon e MongoDB
TDC2013 SP - Criando Webservices ultra rápidos com PHP Phalcon e MongoDB
 
Programando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um FrameworkProgramando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um Framework
 
Criando e consumindo Web Services (REST) com o CakePHP
Criando e consumindo Web Services (REST) com o CakePHPCriando e consumindo Web Services (REST) com o CakePHP
Criando e consumindo Web Services (REST) com o CakePHP
 
TDC São Paulo 2015 - Interfaces Ricas com Rails e React.JS
TDC São Paulo 2015  - Interfaces Ricas com Rails e React.JSTDC São Paulo 2015  - Interfaces Ricas com Rails e React.JS
TDC São Paulo 2015 - Interfaces Ricas com Rails e React.JS
 
Flutter do zero a publicacao
Flutter do zero a publicacaoFlutter do zero a publicacao
Flutter do zero a publicacao
 
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
 
Introducao ao Spring Web MVC
Introducao ao Spring Web MVCIntroducao ao Spring Web MVC
Introducao ao Spring Web MVC
 
2009 05 20 Floripa Flex
2009 05 20 Floripa Flex2009 05 20 Floripa Flex
2009 05 20 Floripa Flex
 
Workshop Node.js + MongoDB + Mongoose
Workshop Node.js + MongoDB + MongooseWorkshop Node.js + MongoDB + Mongoose
Workshop Node.js + MongoDB + Mongoose
 
Google API
Google APIGoogle API
Google API
 
O que esperar do Zend Framework 3
O que esperar do Zend Framework 3O que esperar do Zend Framework 3
O que esperar do Zend Framework 3
 
Geolocalização em PHP - Google Places, Maps e Routes
Geolocalização em PHP - Google Places, Maps e RoutesGeolocalização em PHP - Google Places, Maps e Routes
Geolocalização em PHP - Google Places, Maps e Routes
 

Mais de Rodrigo Branas

Clean Architecture
Clean ArchitectureClean Architecture
Clean Architecture
Rodrigo Branas
 
#6 - Git - Desfazendo as coisas
#6 - Git - Desfazendo as coisas#6 - Git - Desfazendo as coisas
#6 - Git - Desfazendo as coisas
Rodrigo Branas
 
#1 - Git - Introdução
#1 - Git - Introdução#1 - Git - Introdução
#1 - Git - Introdução
Rodrigo Branas
 
#5 - Git - Contribuindo com um repositório remoto
#5 - Git - Contribuindo com um repositório remoto#5 - Git - Contribuindo com um repositório remoto
#5 - Git - Contribuindo com um repositório remoto
Rodrigo Branas
 
#4 - Git - Stash
#4 - Git - Stash#4 - Git - Stash
#4 - Git - Stash
Rodrigo Branas
 
#3 - Git - Branching e Merging
#3 - Git - Branching e Merging#3 - Git - Branching e Merging
#3 - Git - Branching e Merging
Rodrigo Branas
 
JavaScript - Date
JavaScript - DateJavaScript - Date
JavaScript - Date
Rodrigo Branas
 
JavaScript - Expressões Regulares
JavaScript - Expressões RegularesJavaScript - Expressões Regulares
JavaScript - Expressões Regulares
Rodrigo Branas
 
Selenium - WebDriver
Selenium - WebDriverSelenium - WebDriver
Selenium - WebDriver
Rodrigo Branas
 
Test-Driven Development com JavaScript, Jasmine Karma
Test-Driven Development com JavaScript, Jasmine  KarmaTest-Driven Development com JavaScript, Jasmine  Karma
Test-Driven Development com JavaScript, Jasmine Karma
Rodrigo Branas
 
Bower
BowerBower
Desvendando a linguagem JavaScript
Desvendando a linguagem JavaScriptDesvendando a linguagem JavaScript
Desvendando a linguagem JavaScript
Rodrigo Branas
 

Mais de Rodrigo Branas (12)

Clean Architecture
Clean ArchitectureClean Architecture
Clean Architecture
 
#6 - Git - Desfazendo as coisas
#6 - Git - Desfazendo as coisas#6 - Git - Desfazendo as coisas
#6 - Git - Desfazendo as coisas
 
#1 - Git - Introdução
#1 - Git - Introdução#1 - Git - Introdução
#1 - Git - Introdução
 
#5 - Git - Contribuindo com um repositório remoto
#5 - Git - Contribuindo com um repositório remoto#5 - Git - Contribuindo com um repositório remoto
#5 - Git - Contribuindo com um repositório remoto
 
#4 - Git - Stash
#4 - Git - Stash#4 - Git - Stash
#4 - Git - Stash
 
#3 - Git - Branching e Merging
#3 - Git - Branching e Merging#3 - Git - Branching e Merging
#3 - Git - Branching e Merging
 
JavaScript - Date
JavaScript - DateJavaScript - Date
JavaScript - Date
 
JavaScript - Expressões Regulares
JavaScript - Expressões RegularesJavaScript - Expressões Regulares
JavaScript - Expressões Regulares
 
Selenium - WebDriver
Selenium - WebDriverSelenium - WebDriver
Selenium - WebDriver
 
Test-Driven Development com JavaScript, Jasmine Karma
Test-Driven Development com JavaScript, Jasmine  KarmaTest-Driven Development com JavaScript, Jasmine  Karma
Test-Driven Development com JavaScript, Jasmine Karma
 
Bower
BowerBower
Bower
 
Desvendando a linguagem JavaScript
Desvendando a linguagem JavaScriptDesvendando a linguagem JavaScript
Desvendando a linguagem JavaScript
 

Criando serviços com AngularJS

  • 1. Criando Serviços com AngularJS Rodrigo Branas – @rodrigobranas - http://www.agilecode.com.br
  • 2. Rodrigo Branas rodrigo.branas@agilecode.com.br http://www.agilecode.com.br • Desenvolvendo Software na Gennera • Criando treinamentos na Agile Code • Escrevendo na Java Magazine e PacktPub • Palestrando sobre desenvolvimento de software em eventos, universidades e empresas
  • 3. Certificações Formação Acadêmica Ciências da Computação – UFSC Gerenciamento de Projetos - FGV SCJA, SCJP, SCJD, SCWCD, SCBCD, PMP, MCP e CSM Experiência Há mais de 12 anos desenvolvendo software na plataforma Java com as empresas: EDS, HP, NET, Citibank, GM, Dígitro, Softplan, OnCast, Senai, VALE, RBS, Unimed, Globalcode, V.Office, Suntech, WPlex e Gennera.
  • 4. • Há mais de 5 anos liderando pessoas. • Mais de 2000 horas em sala de aula. • Mais de 100 apresentações em eventos. • 6 artigos escritos para revistas. • 1 livro. • Mais de 500 profissionais treinados. • Criação de 22 palestras. • Criação de 10 treinamentos. • Criação de mais de 3.000 slides. O que realmente me motiva?
  • 5. Quando devemos criar serviços?
  • 6. Criando um serviço para interagir com a API REST
  • 7. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. });
  • 8. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. });
  • 9. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. });
  • 11. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. });
  • 12. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory();
  • 13. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI");
  • 14. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI", function () { 26. });
  • 15. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI", function ($http) { 26. });
  • 16. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI", function ($http) { 26. var _getContatos = function () { 27. }; 28. });
  • 17. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI", function ($http) { 26. var _getContatos = function () { 27. return $http.get('/contatos'); 28. }; 29. });
  • 18. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI", function ($http) { 26. var _getContatos = function () { 27. return $http.get('/contatos'); 28. }; 29. return { 30. }; 31. });
  • 19. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI", function ($http) { 26. var _getContatos = function () { 27. return $http.get('/contatos'); 28. }; 29. return { 30. getContatos: _getContatos 31. }; 32. });
  • 20. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI", function ($http) { 26. var _getContatos = function () { 27. return $http.get('/contatos'); 28. }; 29. return { 30. getContatos: _getContatos 31. }; 32. });
  • 21. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI", function ($http) { 26. var _getContatos = function () { 27. return $http.get('/contatos'); 28. }; 29. return { 30. getContatos: _getContatos 31. }; 32. });
  • 22. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI", function ($http) { 26. var _getContatos = function () { 27. return $http.get('/contatos'); 28. }; 29. return { 30. getContatos: _getContatos 31. }; 32. });
  • 23. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. $http.get('/contatos').success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI", function ($http) { 26. var _getContatos = function () { 27. return $http.get('/contatos'); 28. }; 29. return { 30. getContatos: _getContatos 31. }; 32. });
  • 24. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. .success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI", function ($http) { 26. var _getContatos = function () { 27. return $http.get('/contatos'); 28. }; 29. return { 30. getContatos: _getContatos 31. }; 32. });
  • 25. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. ListaTelefonicaAPI.getContatos().success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI", function ($http) { 26. var _getContatos = function () { 27. return $http.get('/contatos'); 28. }; 29. return { 30. getContatos: _getContatos 31. }; 32. });
  • 26. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. ListaTelefonicaAPI.getContatos().success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.factory("ListaTelefonicaAPI", function ($http) { 26. var _getContatos = function () { 27. return $http.get('/contatos'); 28. }; 29. return { 30. getContatos: _getContatos 31. }; 32. });
  • 27. 1. var app = angular.module("listaTelefonica", ['ngRoute']); 2. 3. app.controller("ListaTelefonicaCtrl", function ($scope, $http, ListaTelefonicaAPI) { 4. $scope.app = "Lista Telefônica"; 5. $scope.carregarContatos = function () { 6. ListaTelefonicaAPI.getContatos().success(function (contatos) { 7. $scope.listaTelefonica = contatos; 8. }); 9. }; 10. $scope.carregarOperadoras = function () { 11. $http.get('/operadoras').success(function (operadoras) { 12. $scope.operadoras = operadoras; 13. }); 14. }; 15. $scope.adicionarContato = function (contato) { 16. $http.post('/contatos', contato).success(function () { 17. $scope.carregarContatos(); 18. }); 19. delete $scope.contato; 20. }; 21. $scope.carregarContatos(); 22. $scope.carregarOperadoras(); 23. }); 24. 25. app.service("ListaTelefonicaAPI", function ($http) { 26. this.getContatos = function () { 27. return $http.get('/contatos'); 28. }; 29. });