2017-01-23 70 views
0

我在我的應用程序中使用Auth0來檢查(在模板中)用戶是否已通過身份驗證。喜歡的東西:angularJS有條件地重定向用戶

<div ng-if="isAuthenticated" id="grid1" ui-grid="gridOptions" ui-grid-importer class="grid" ui-grid-resize-columns ui-grid-move-columns ui-grid-auto-resize ui-grid-selection ui-grid-cellNav ui-grid-paging myscroller></div> 
<div ng-if="!isAuthenticated"> 
    <p>You will be redirected because you are not authenticated</p> 
</div> 
!isAuthenticated部分

,我怎麼可以從HTML內將用戶重定向?有沒有辦法?

我以前見過類似這樣的東西:<meta http-equiv="refresh" content="2; URL=http://www.redirectedsite.com">但這似乎並不適用,因爲它是一個元標記。

回答

1

可以在控制器使用ngInit

<div ng-if="isAuthenticated" id="grid1" ui-grid="gridOptions" ui-grid-importer class="grid" ui-grid-resize-columns ui-grid-move-columns ui-grid-auto-resize ui-grid-selection ui-grid-cellNav ui-grid-paging myscroller></div> 
<div ng-if="!isAuthenticated"> 
    <p ng-init="redirect()">You will be redirected because you are not authenticated</p> 
</div> 

$scope.redirect = function() { 
    // redirecting in 1 sec... 
    $timeout(function() { 
     $location.path('/login'); 
    }, 1000); 
}