Я знаю, что вы уже отметили ответ, но я хотел указать на нюанс, связанный с производительностью.
В зависимости от размера вашего меню и HTML вы можете выйти за пределы ng-show, чтобы использовать ng-if. Проблема с ng-show заключается в том, что все узлы скомпилированы, даже те, которые пользователь никогда не будет использовать. Например, Менеджер никогда не может использовать узлы администратора или пользователя, но они все еще разобраны и скомпилированы.
Если вы используете ng - если вы можете избежать этого и только визуализировать/компилировать фрагменты, когда условие истинно. Так как вы всегда будете использовать тот же контроллер, вы не должны повторять:
<div ng-controller="AccountController">
<div ng-if="IsAdmin()">...admin nav...</div>
<div ng-if="IsUser()">...user nav...</div>
</div>
Мы на массивном углового применение и небольшие изменения, как это пожинать основные преимущества в производительности. Когда выражение «if» терпит неудачу, элемент удаляется из DOM и никогда не компилируется, а также ng-show, пока он все еще компилирует элемент и просто скрывает его.
[ng-show] (http://docs.angularjs.org/api/ng.directive:ngShow) – snaplemouton