我有5个按钮的sideNav条在左侧。我想要做的是,当我单击一个按钮侧边栏时,当我单击另一个按钮时,另一个边栏应该会出现,而前一个边栏应该会自动关闭。
这是我的代码:
<mat-drawer-container class="example-container" autosize>
<div class="container">
<div class="actions">
<div (click)="drawer1.toggle()"></div>
<div (click)="drawer2.toggle()"></div>
<div (click)="drawer3.toggle()"></div>
<div (click)="drawer4.toggle()"></div>
<div (click)="drawer5.toggle()"></div>
</div>
<div class="content">
<mat-drawer #drawer1 class="example-sidenav" mode="over">
<p>A</p>
</mat-drawer>
<mat-drawer #drawer2 class="example-sidenav" mode="over">
<p>B</p>
</mat-drawer>
<mat-drawer #drawer3 class="example-sidenav" mode="over">
<p>C</p>
</mat-drawer>
<mat-drawer #drawer4 class="example-sidenav" mode="over">
<p>D</p>
</mat-drawer>
<mat-drawer #drawer5 class="example-sidenav" mode="over">
<p>E</p>
</mat-drawer>
</div>
</div>
</mat-drawer-container>Style.SCSS
.mat-drawer-backdrop.mat-drawer-shown {
background-color: unset !important;
}
.mat-drawer { //locate the side bar under the button
z-index: -1 !important;
width: 90%;
}
.mat-drawer-inner-container { //make the container text
align-items: center;
display: flex;
justify-content: center;
font-size: 140px;
}这是
发布于 2022-06-22 15:57:28
最后,您需要切换一个sidenav并手动关闭其他的,只需给每个sidenav一个id,并使用该div和click事件来切换指定的sidenav并关闭其他的。
下面是一个编辑过的stackblitz版本,作为一个运行示例。
https://stackoverflow.com/questions/72710215
复制相似问题