Я создал угловую боковую панель с помощью SidebarService Пример :
export class SidebarService {
public hidden: boolean = true;
toggle(): void {
this.hidden = !this.hidden;
}
}
Тогда у меня есть компонент боковой панели:
@Component({
selector: 'sidebar',
templateUrl: './sidebar.component.html',
styleUrls: [ './sidebar.component.css' ]
})
export class SidebarComponent {
constructor(public sidebarService: SidebarService) { }
}
Какой шаблон:
<div id="sidebar" [ngClass]="{'hidden': sidebarService.hidden}">
<button type="button" (click)="sidebarService.toggle()">
Close Sidebar
</button>
<nav>
<ul>
<li>
<a href="#">Page 1</a>
</li>
<li>
<a href="#">Page 2</a>
</li>
</ul>
</nav>
</div>
Наконец, я использую его следующим образом:
<sidebar></sidebar>
<button type="button" (click)="sidebarService.toggle()">
Open Sidebar
</button>
<h1>Main Content</h1>
Вопросы
Вместо скрытия / показа боковой панели можно сдвинуть ее слева?
Является ли использование службы хорошим подходом для совместного использования скрытия / отображения боковой панели в разных местах?
Или есть лучший вариант?