English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Resumen de las diferencias entre $scope y $rootScope en AngularJS

Una frase resumen:

     $rootScope tiene efecto en el ámbito global

     $scope solo tiene efecto en el ámbito del controlador actual

Usando el siguiente ejemplo para probar lo dicho anteriormente:

Se define un módulo llamado myApp

var myApp = angular.module('myApp', []);

Se crean los controladores oneController y twoController

oneController transmite $scope y $rootScope

myApp.controller('oneController', ['$scope', '$rootScope', function ($scope, $rootScope) {
 // Las variables locales solo se muestran en oneController
 $scope.one_language = 'Python';
 // Las variables globales pueden ser llamadas
 $rootScope.language = 'Go';
});

twoController solo pasa $scope

myApp.controller('twoController', ['$scope', function ($scope) {
 // Las variables locales solo se muestran en twoController
 $scope.two_language = 'Java';
});

Contenido de la etiqueta HTML

<span ng-app="myApp">
  <style>
    div{margin-top: 15px;border: 2px solid rebeccapurple;width: 400px;}
  </style>
  <div>
    <h3>Soy la variable de lenguaje global: {{ language}}</h3>
  </div>
  <div ng-controller="oneController">
    <h3>Soy la variable local one_language: {{ one_language}}</h3>
  </div>
  <div ng-controller="twoController">
    <h1>twoController</h1>
    <h3>Soy la variable local two_language: {{ two_language }}</h3>
    <h3>Soy la variable local one_language: {{ one_language}}</h3>
    <h3>Soy la variable de lenguaje global: {{ language }}</h3>
  </div>
</span>

Resultados mostrados

Resumen

Este es el contenido completo del artículo, por favor revise cuidadosamente el código anterior, lo que le ayudará a entender. Si tienen alguna pregunta, pueden dejar comentarios para intercambiar, gracias por el apoyo a la tutorial de gritos.

Te gustará