设置$ rootScope&改变它的价值

时间:2014-05-11 13:04:12

标签: angularjs rootscope

我希望将$rootScope变量stateSelection默认设置为false

因此,当我的applciation运行时,$rootScope.stateSelection的值将为false。我想知道在初始化app时如何设置它。

现在我在Auth功能login服务中设置它。

当用户登录&选择一个状态,我在一个名为clickSelection()&的控制器中调用一个方法。在此功能中,我更改了$rootScope.stateSelection = true;

刷新页面时遇到问题,$rootScope.stateSelection的值变为false

由于

1 个答案:

答案 0 :(得分:1)

$ rootScope.stateSelection在刷新时始终为false,除非您在某处持久保存该值。

如果要在某处保存数据,可以使用resolve属性(阅读有关结果here的更多信息)来返回一个在加载页面之前设置值的函数:

$stateProvider
  .state('home', {
    url: '/home',
    templateUrl : 'views/home.html',
    controller : 'HomeController',
    resolve : {
      authenticate : function auth(authService){
         // Function to get the stateSelection value
         return authService.getStateSelection()
      }
    }
  }