Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Scope AngularJS

2,165 views

Published on

Aprenda a utilizar o Scope do AngularJS

Published in: Internet
  • Be the first to comment

Scope AngularJS

  1. 1. Rodrigo Branas – @rodrigobranas - http://www.agilecode.com.br Scope
  2. 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. 3. Formação Acadêmica Ciências da Computação – UFSC Gerenciamento de Projetos - FGV Certificações 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. 4. O que realmente me motiva? • 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.
  5. 5. $watch e $watchCollection
  6. 6. Por meio do $watch e $watchCollection é possível se registrar para acompanhar as modificações de uma determinada propriedade do $scope.
  7. 7. $rootScope
  8. 8. Toda aplicação tem exatamente um root scope e todos os escopos filhos herdam as suas propriedades.
  9. 9. 1. app.run();
  10. 10. 1. app.run(function() { 2. });
  11. 11. 1. app.run(function($rootScope) { 2. });
  12. 12. 1. app.run(function($rootScope) { 2. $rootScope.usuario = { 3. nome: "Pedro da Silva", 4. email: "pedro.silva@agilecode.com.br" 5. }; 6. });
  13. 13. Propagação de Eventos
  14. 14. Propagando eventos para os escopos filhos
  15. 15. 1. $scope.$broadcast("usuario", { 2. nome: "Pedro da Silva", 3. email: "pedro.silva@agilecode.com.br" 4. });
  16. 16. Propagando eventos para os escopos pais
  17. 17. 1. $scope.$emit("usuario", { 2. nome: "Pedro da Silva", 3. email: "pedro.silva@agilecode.com.br" 4. });
  18. 18. Ouvindo um determinado evento
  19. 19. 1. $scope.$on("usuario", function (event, data) { 2. $scope.usuario = data; 3. });
  20. 20. Deixando de ouvir um determinado evento
  21. 21. 1. $scope.$on("usuario", function (event, data) { 2. $scope.usuario = data; 3. });
  22. 22. 1. $scope.$on("usuario", function (event, data) { 2. $scope.usuario = data; 3. });
  23. 23. 1. var unsubscribe = $scope.$on("usuario", function (event, data) { 2. $scope.usuario = data; 3. });
  24. 24. 1. var unsubscribe = $scope.$on("usuario", function (event, data) { 2. $scope.usuario = data; 3. }); 4. unsubscribe();

×