Angular - 我可以在模块中访问控制器的变量吗?

时间:2016-02-29 19:59:11

标签: angularjs

在我的角应用中,如果用户已登录,我不希望他们能够获得login页面。

在我的主控制器中,我有一个方法isAuthed(),它返回一个布尔告知我这个状态。但是我如何在ngRoute模块中访问它。我使用下面的代码:

.when("/login",
            {
              templateUrl: "views/login.html",
              controller: 'Main',
              controllerAs: 'main',
              resolve:{
                "check":function($location){
                    if($scope.main.isAuthed()){
                        $location.path('/');
                    }
                }
            }
            }
)

解决方案:

我需要将其添加为服务:

.when("/login",
            {
              templateUrl: "views/login.html",
              controller: 'Main',
              controllerAs: 'main',
              resolve:{
                "check":function($location, authService){
                    if(authService.isAuthed()){
                        $location.path('/');
                    }
                }
            }
            }
)

0 个答案:

没有答案