Я видел этот и этот, но похоже, что может быть более простой способ.
На мой взгляд, у меня есть несколько параметров меню, которые контролируются с помощью разрешения - т.е. не все могут видеть представление "Панель мониторинга". Поэтому в моем пункте меню на мой взгляд у меня есть что-то вроде следующего:
<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. Как я могу дождаться загрузки всех пакетов до отображения рендеринга?