У меня есть своего рода меню боковой панели. Например:
Projects:
All
project1
project2
Когда я щелкаю элемент, я хочу изменить его цвет фона. (от черного к зеленому).
Projects:
All
project1 // This was clicked and I want to be GREEN
project2
Но то, что я делал до сих пор, это изменил цвет для всех проектов, когда я щелкал по проекту. Все они зеленые знают. Я не знаю, как это сделать для конкретного предмета.
<div class="container">
<h5>Projects: </h5>
<div class="container-fluid">
<ul class="nav navbar-nav side-nav">
<li routerLinkActive="active" class="nav-item">
<a (click)="activeProject()" [ngStyle]="{'background-color':isActiveProject? 'green' : 'white' }" routerLink="/tasks" href="#">All</a>
</li>
</ul>
<ul class="nav navbar-nav side-nav" *ngFor="let project of projects">
<li routerLinkActive="active" class="nav-item" >
<a (click)="activeProject()" [ngStyle]="{'background-color':isActiveProject? 'green' : 'white' }" [routerLink]="['/tasks/project/', project.projectId]" href="#">{{project.projectName}}</a>
</li>
</ul>
</div>
</div>
В компоненте:
isActiveProject: boolean;
activeProject() {
this.isActiveProject = true;
}
Я полагаю, что этот активный метод проекта применим ко всем элементам li, он остается активным, когда для него установлено значение true.