Исправлена иконка гамбургера угловая
Я сгенерировал компонент заголовка, используя ng generate @angular/material:material-nav --name header
в этом мне нужно исправить значок гамбургера, даже если размер экрана больше. Прямо сейчас это появляется только когда размер экрана маленький. Мне нужна помощь в исправлении этого. Код в stackblitz ( https://angular-bfjx3s.stackblitz.io/) Спасибо
Нужно что-то вроде этого ( https://console.cloud.google.com/)
4 ответа
Вам нужно изменить условие *ngIf для кнопки гамбургера следующим образом (или вы даже можете удалить *ngIf, если хотите, чтобы кнопка была всегда видимой:
<mat-toolbar color="primary">
<button
type="button"
aria-label="Toggle sidenav"
mat-icon-button
(click)="drawer.toggle()"
*ngIf="true">
<mat-icon aria-label="Side nav toggle icon">menu</mat-icon>
</button>
<span>web-doctor</span>
</mat-toolbar>
Код здесь: https://stackblitz.com/edit/angular-kutmnh
Спасибо всем за попытку, я обнаружил, что это разные точки останова, как упомянуто здесь ( свойство Angular mat-sidenav isHandset$ | async объяснять) Поэтому я изменил текущие настройки на ((isWeb$ | async) || (isTablet$ | async) || (isHandSet$ | async))
в файле HTML и в файле TS следующим образом
isWeb$: Observable<boolean> = this.breakpointObserver.observe(Breakpoints.Web)
.pipe(
map(result => result.matches)
);
isTablet$: Observable<boolean> = this.breakpointObserver.observe(Breakpoints.Tablet)
.pipe(
map(result => result.matches)
);
isHandSet$: Observable<boolean> = this.breakpointObserver.observe(Breakpoints.Handset)
.pipe(
map(result => result.matches)
);
Вы можете удалить условное утверждение *ngIf="isHandset$ | async"
от кнопки
Удалить *ngIf
код из приведенного ниже кода в header.component.html
<button
type="button"
aria-label="Toggle sidenav"
mat-icon-button
(click)="drawer.toggle()">
<mat-icon aria-label="Side nav toggle icon">menu</mat-icon>
</button>