Что использовать вместо $rootScope?

Все мои контроллеры в моем приложении используют переменную $rootScope selectedDashboard. В этом примере я установил переменную $rootScope в контроллере miniCtrl.

Я также использую маршруты, и в зависимости от того, какое представление вы используете на других контроллерах, значение selectedDashboard изменится. Я не понимаю, как я могу использовать службу, потому что я не хочу, чтобы все контроллеры использовали одно и то же заданное значение. Контроллеры по очереди изменяют значение. Правильно ли я использую $rootScope? Или я все же должен делать что-то другое?

angular.module('ciscoImaDashboardAdmin',[])
  .controller('miniCtrl', function ($scope, $rootScope) {

  $scope.selectDashboard = function(e) {
      var newDashboardNum = e.target.attributes.data.value;
      $rootScope.selectedDashboard = newDashboardNum;
  }

});


angular.module('ciscoImaDashboardAdmin',[])
  .controller('otherCtrl', function ($scope, $rootScope, dummyData) {

  var selectedDashboard = $rootScope.selectedDashboard;
  var data;

  for(var d in dummyData.dashboardsData) {

    if(dummyData.dashboardsData[d].dashboard_number == selectedDashboard) {
        data = dummyData.dashboardsData[d];
    }
  }

});

person Neha Sohail    schedule 24.01.2016    source источник
comment
Для этого существует множество учебных пособий. Пожалуйста, попробуйте поискать, прежде чем задавать вопросы   -  person charlietfl    schedule 24.01.2016
comment
@charlietfl я делаю по-другому, устанавливая переменную $ rootScope в моем первом контроллере, но все остальные контроллеры изменят значение $ rootScope. Я не хочу, чтобы все контроллеры использовали одно значение, установленное в службе, потому что контроллеры будут их менять.   -  person Neha Sohail    schedule 24.01.2016
comment
но это ничем не отличается от того, как используется служба, но вы не храните в $rootScope   -  person charlietfl    schedule 24.01.2016
comment
@charlietfl Я обновил свой вопрос. Опубликованная вами ссылка на пример не помогает, потому что она устанавливает значение для одной переменной в службе, которую используют два контроллера... что, если сами контроллеры меняют значения?   -  person Neha Sohail    schedule 24.01.2016
comment
они меняют его в сервисе... пожалуйста, выполните поиск в Интернете и прочитайте, как используются сервисы   -  person charlietfl    schedule 24.01.2016