我使用 生成了一个标题组件ng generate @angular/material:material-nav --name header
,在此我需要固定汉堡图标,即使屏幕尺寸较大。现在它仅在屏幕尺寸较小时出现。我需要一些帮助来解决这个问题。stackblitz 中的代码(https://angular-bfjx3s.stackblitz.io/)谢谢
需要这样的东西(https://console.cloud.google.com)
我使用 生成了一个标题组件ng generate @angular/material:material-nav --name header
,在此我需要固定汉堡图标,即使屏幕尺寸较大。现在它仅在屏幕尺寸较小时出现。我需要一些帮助来解决这个问题。stackblitz 中的代码(https://angular-bfjx3s.stackblitz.io/)谢谢
需要这样的东西(https://console.cloud.google.com)
*ngIf="isHandset$ | async"
您可以从按钮中删除条件语句
您需要像这样更改汉堡包按钮的 *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>
从header.component.html*ngIf
中的以下代码中删除条件
<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>
谢谢大家的尝试,我发现这里提到的不同断点(Angular mat-sidenav property isHandset$ | async explain)所以我将当前设置更改为((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)
);