角度材料边栏 - 如何在另一个组件中触发绘图切换?

时间:2018-06-19 03:29:27

标签: angular angular-material

按钮位于导航栏中,该栏位于侧边栏的不同组件中。 我的布局看起来像这样:

<mat-sidenav-container class="sidenav-container">
  <mat-sidenav #drawer
    class="sidenav"
    fixedInViewport="true"
    [attr.role]="(isHandset$ | async) ? 'dialog' : 'navigation'"
    [mode]="(isHandset$ | async) ? 'over' : 'side'"
    [opened]="!(isHandset$ | async)">
    <app-sidebar></app-sidebar>
  </mat-sidenav>
  <mat-sidenav-content>
    <app-navbar></app-navbar>
  </mat-sidenav-content>
</mat-sidenav-container>

在导航栏上,我有这个按钮:

<button mat-icon-button (click)="drawer.toggle()">
  <mat-icon>menu</mat-icon>
</button>

1 个答案:

答案 0 :(得分:0)

您可以将侧边栏设置为导航栏中的子组件@ViewChild('drawer') drawer: ElementRef;,或者在侧边栏组件中创建切换类,并在导航栏组件中使用@ViewChild(SidebarComponent) child: SidebarComponent;并使用{{1}切换它}