Предположим, что у нас есть меню в моем приложении angular SPA, теперь я хочу, чтобы основные параметры отображались всем пользователям, например, домой, о нас, возможностях оператора и т.д.
Я также хотел бы иметь несколько других параметров, таких как управление пользователями, сообщения mange и т.д., которые будут отображаться только администратору.
Предположим также, что у нас есть точка доступа API, которая предоставляет мне роль пользователя или, еще лучше, роль пользователя в объекте, полученном из /api/users/me.
Каким будет лучший способ инкапсулировать эти средства управления от просмотра обычными пользователями?
Есть ли какое-то наследование среди представлений? как в Django?, есть ли способ скрыть элементы DOM от неавторизованного пользователя? (да, я знаю, что это клиентская сторона).
Я бы предпочел не использовать разные представления для меню, так как он должен быть родовым компонентом.
Я полагаю, что если ответ на весь мой предыдущий вопрос не будет, остается вопрос: какова наилучшая реализация для этого? пользовательская директива ( "E" + "A" ) скажем:
<limitedAccss admin>Edit page</limitedAccess>
<limitedAccss user>view page</limitedAccess>
или, возможно, просто используя регулярное ng-show с условием на пользовательском объекте?.