2016-02-14 1 views
0

У меня есть ссылка, как это: <a ng-click="doSomething()">Do something</a>йомен fullstack-угловой с использованием аутентификации в контроллере

В мой контроллер я хочу принимать различные действия на основе проверки подлинности, но я не могу понять правильный синтаксис. Я попробовал два следующих способа, которыми оба не работают.

Trial 1 (это всегда так, как это возвращает PROMISS):

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

Trial 2 (ошибка:. Auth.isLoggedIn (...), то это не функция):

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

ответ

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

+0

Я была опечатка ... Спасибо за ответ – Mika

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