2013-09-19 2 views
3

Я хочу присвоить некоторые данные глобальной переменной (может быть $ strictcope), которая инициализируется в pageload. И затем я хочу получить доступ к этим данным со всех контроллеров. Как мне это сделать?

// Edit : I tried following and it works as expected.... 

function Ctrl1($rootScope) { 
    $rootScope.value = "asdf"; 
} 

function Ctrl2($rootScope, $scope) { 
    $scope.value = $rootScope.value; 
} 
+0

Вложение '$ rootScope' зависимости в ваших контроллерах. – Chandermani

+0

Спасибо за быстрый ответ Chandermani. Будет ли корневой файл $ оставаться общим для всех контроллеров? Я имею в виду, могу ли я присвоить ему что-то в одной функции контроллера и получить доступ к ней из другой функции контроллера? Извините, я очень новичок в angularjs (2 дня старый ..!) – Sangram

+1

Да абсолютно! Вы можете попробовать все. '$ rootScope' является ближайшей к глобальной переменной в Angular и поэтому ее использование должно быть сведено к минимуму. Существуют и другие способы обмена данными, поиск угловых сервисов. – Chandermani

ответ

6
MyController($rootScope,$scope) 
{ 
    $rootScope = .... 
} 

вы получите точку :)

0

Если вы пытаетесь показать переменную в представлении, то не нужно от назначения переменной от $ rootScope до $ объема.

Смежные вопросы