我是AngularJS的初学者,我面临以下问题:
我有一个带有侧导航的屏幕,每个链接都由AngularJS管理。路由器。关键是侧边导航中的一些选项以及一些内容只会显示给某些特殊类型的用户,我们称之为管理员。
我想使用类似的东西:
<ng-if="isAdmin == true">
....
</ng-if>
所以问题是我如何使用来自请求的值设置isAdmin变量?
答案 0 :(得分:1)
我不熟悉Spring,但你可以向Spring发出一个Angular $http
请求,询问用户是否是管理员,并让它发回true或false,并设置结果控制器中的响应。像这样:
var url = 'someUrl'; // URL to the spring framework that responds with a JSON type
// response containing { isAdmin: true } or { isAdmin: false }
$http.get(url).success(function(response) {
$scope.isAdmin = response.data.isAdmin;
});
修改强>
或者,您可以在JavaScript中设置全局变量,例如<head>
中的某个地方,并将其放在$rootScope
上。我不确切知道如何使用Spring执行此操作,但HTML必须如下所示:
<script>
var isAdmin = true; // or false
</script>
然后,您可以在任何地方访问此变量,因此您可以将其放在主控制器中的$rootScope
上:
$rootScope.isAdmin = isAdmin;
然后,您可以在所有视图中访问它。