Новых в angular2, Мой app.component.html выглядит как this-angular2 содержания шоу шкуры заголовка на основе ролей пользователей
<nav *ngIf="rolesArr.length>0" >
<ul>
<li>
<a routerLink="home" class="sectionLink">Home</a>
</li>
<li>
<a routerLink="manage" class="sectionLink">manage</a>
</li>
<li>
<a routerLink="setting" class="sectionLink">setting</a>
</li>
</nav>
<router-outlet></router-outlet>
<footer> ... </footer>
и здесь app.component.ts-
export class AppComponent {
rolesArr: string[];
constructor(private ps: PostsService, private roleS: Roles) {
this.rolesArr = roleS.getUserRoles();
}
}
Итак, я использую угловую маршрутизацию, чтобы перемещаться между ссылками. включая логин. поэтому этот верхний и нижний колонтитулы загружаются изначально с помощью окна входа в систему. и поскольку пользователь не регистрируется в значении строкового массива roleArr пуст. это означает отсутствие вкладок. это нормально.
но когда пользователь успешно вошел в систему и перешел на другой компонент, содержимое изменений. и строковый массив roleArr получает что-то тоже.
, но мне нужно изменить вид вкладок в заголовке на основе зарегистрированных в роли пользователя. например, если массив содержит роль администратора, все покажет. на роли пользователя будет отображаться только первая вкладка.
Укажите, какие данные поступают в 'roleArr'? – micronyks
Показать свой компонент/функцию входа. – mxii
@micronyks roleArr - это строковый массив (или простая одна строка).логика - это что-то вроде, если она содержит строку «admin», а затем отображает все три вкладки, если в строке «менеджер» отображается только два. если его пользователь показывает только первый. – ArunK