$scope Nedir?
HTML ve JavaScript arasında ki bağlantıyı sağlayan angularJS nesnesidir. MVC'de ki view ile controller arasında ki bağlantıyı sağlayan modelimiz $scope'dur. Hem controller hem de view için kullanılabilir. Tüm $scope'lar $rootScope'un çocuğudur ve sadece bulunduğu controller altında çalışır.
$rootScope Nedir?
HTML ng-app içeren kısmın tamamını kapsar. AngularJS'de en baştaki tek $scope'tur. Diğer scopelar bu $rootScope'tan gelir. Aynı değişkenleri farklı controllerda kullanmak için $rootScope kullanılır.
Not: $rootScope projede kontrollünde zorluk yarattığı için kullanımı önerilmiyor.
Örnek:
<body>
<div ng-app="burcinApp">
{{yaz}}
<div ng-controller="thisController">
{{yaz}}
</div></div>
<script>
var app=angular.module("burcinApp",[]);
app.run(function($rootScope){
$rootScope.yaz="rootScope..";
});
app.controller("thisController",thisController);
function thisController($scope){
$scope.yaz="scope";
}
</script></body>
İlk {{yaz}} ifadesinde controller içerisinde olmadığı için $rootScope etki eder.
İkinci {{yaz}} ifadesinde controller içinde yazıldığı için controller da yazılan $scope
etki eder. Kodu çalıştırmak için tıklayınız.
İkinci {{yaz}} ifadesinde controller içinde yazıldığı için controller da yazılan $scope
etki eder. Kodu çalıştırmak için tıklayınız.