angularjs – 等待范围变量加载,然后在angular.js中的视图中使用它

前端之家收集整理的这篇文章主要介绍了angularjs – 等待范围变量加载,然后在angular.js中的视图中使用它前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我看过 thisthis,但似乎可能有一个更简单的方法

在我看来,我有几个菜单选项通过权限控制 – 即,不是每个人都可以看到“仪表板”视图。所以在我的菜单选项在我的视图中,我有类似如下:

<li ng-show="validatePermission('Dashboard')">Dashboard</li>

在我的控制器中,我有一个validatePermission方法,其中它正在查看当前用户的权限。例如:

$scope.validatePermission = function(objectName) {
    if $scope.allPermissions......

在我的控制器中,我通过$ http调用加载这些权限:

$http.get('permissions/' + userid + '.json').success(function(data) {  
    $scope.allPermissions = data;....

问题是$ scope.allPermissions不会在视图调用validatePermission之前加载。如何在视图渲染之前等待所有权限被加载?

当allPermissions尚未加载时,validatedPermission函数返回false。这样,带有ng-show的元素将不会显示,直到载入所有权限。

或者,将ng-show =“allPermissions”放在封闭的< ul>或< ol&gt ;.

猜你在找的Angularjs相关文章