我在我的应用程序中使用Auth0来检查(在模板中)用户是否经过身份验证。类似的东西:
<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">
但这似乎并不适用,因为它是一个元标记。
答案 0 :(得分: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);
}