File

src/lib/default-header/sidenav-toggle-button/sidenav-toggle-button.component.ts

Metadata

Index

Properties
Methods

Methods

Public toggle
toggle()
Returns : void

Properties

Protected Readonly layoutComponentService
Default value : inject(LayoutService)
Public Readonly opened
Default value : computed(() => this.layoutComponentService.opened())
import {
  ChangeDetectionStrategy,
  Component,
  computed,
  inject,
} from '@angular/core';
import { MatIconButton } from '@angular/material/button';
import { MatIcon } from '@angular/material/icon';
import { LayoutService } from '../../layout.service';

@Component({
    selector: 'rxap-sidenav-toggle-button',
    templateUrl: './sidenav-toggle-button.component.html',
    styleUrls: ['./sidenav-toggle-button.component.scss'],
    changeDetection: ChangeDetectionStrategy.OnPush,
    imports: [
        MatIcon,
        MatIconButton,
    ]
})
export class SidenavToggleButtonComponent {

  protected readonly layoutComponentService = inject(LayoutService);

  public readonly opened = computed(() => this.layoutComponentService.opened());

  public toggle() {
    this.layoutComponentService.toggleOpened();
  }

}
<button (click)="toggle()" mat-icon-button>
  @if (opened()) {
    <mat-icon>menu_open</mat-icon>
  } @else {
    <mat-icon>menu</mat-icon>
  }
</button>

./sidenav-toggle-button.component.scss

Legend
Html element
Component
Html element with directive

results matching ""

    No results matching ""