如何在$ routeProvider。条件中给出条件?

时间:2017-11-06 11:05:50

标签: angularjs

我正在开发一个项目,我有两个不同的管理员和用户仪表板。如果它们是任何网址错误,我需要显示一个默认页面。

目前我只有下面的代码,它只显示一个用于用户仪表板的默认页面

.otherwise({ redirectTo: '/dashboard' });

当我需要将其显示给管理员时,如何将其更改为.otherwise({ redirectTo: '/adminDashboard' });

2 个答案:

答案 0 :(得分:1)

我不知道您如何确定用户是否为管理员。但我假设您有任何标志变量,其值为true或false。

如果您确定当前用户是管理员,则只需尝试此操作// IsAdmin是当前角色的标志变量是否为admin。

redirectTo: IsAdmin === true? '/adminDashboard' : '/dashboard' 

*重要:

  

否则您应该获得当前用户角色(管理员或用户)   仪表板控制器。然后你可以用下面的条件重定向路线。

if($scope.currentRole=="Admin")
{
 $location.path('/adminDashboard');
}else{
$location.path('/dashboard');
}

答案 1 :(得分:0)

在我的应用程序中,URL中有参数。如果是这样,那么您可以使用类似的

$location.search().myParam; 

Lets say i have token as query param 

location.search.includes("token")