yeoman fullstack-angular使用控制器中的身份验证

时间:2016-02-14 16:05:58

标签: angularjs angular-fullstack

我有这样的链接:<a ng-click="doSomething()">Do something</a>

在我的控制器中,我想根据身份验证采取不同的操作,但我无法找出正确的语法。我试过以下两种方法都不起作用。

试验1(总是因为它正在返回一个promiss):

$scope.doSomething = function(){
  if (Auth.isLoggedIn) {
    console.log('isLoggedIn'); 
  } else {
    console.log('isNotLoggedIn');
  }
}

试用2(错误:Auth.isLoggedIn(...)。然后不是函数):

$scope.doSomething = function(){
  Auth.isLoggedIn().then(function(isLoggedIn){
    if (isLoggedIn) {
      console.log('isLogged');
    } else {
      console.log('isNotLoggedIn');
    }
  });
 }

1 个答案:

答案 0 :(得分:1)

试用1对我有用。确保将Auth注入控制器,如下所示:

app.controller('somethingCtrl',  ['$scope', 'Auth', function ($scope, Auth) { 

然后

  $scope.doSomething = function(){
    if (Auth.isLoggedIn) {
      console.log('isLoggedIn');
    } else {
      console.log('isNotLoggedIn');
    }
  }

将返回isLoggedIn