【发布时间】:2020-08-09 05:46:47
【问题描述】:
我正在制作一个 Angular 9 应用,我想在我的项目中添加一个 sidenav。
我想要的sidenav就是这个Primer Angular Template --> Primer - Angular 8+ Material
这就是我想要的
这就是我用我的 scss 和 html 得到的。问题是侧边栏折叠时内容没有调整大小,然后样式被破坏。为此,我正在寻找mat-sidenav-container 和mat-sidenav 的答案
HTML
<mat-sidenav-container class="app example-sidenav-container" autosize>
<mat-sidenav #sidenav class="example-sidenav" mode="side" opened="true" [ngStyle]="{ 'width': !collapsedSidebar ? '250px':'70px' }">
<button mat-icon-button (click)="collapsedSidebar = !collapsedSidebar">
<mat-icon>menu</mat-icon>
</button>
</mat-sidenav>
<div fxFlex class="example-sidenav-content">
<router-outlet></router-outlet>
</div>
</mat-sidenav-container>
SCSS
.app { height: 100vh; }
.example-container {
display: flex;
flex-direction: column;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
.example-sidenav-container { flex: 1; }
.example-sidenav{
-webkit-transition: width .4s;
transition: width .4s;
}
.mat-drawer{ background:White; }
.example-sidenav-content {
display: flex;
height: 100%;
background-color: #e8ded7;
opacity: 0.9;
}
.example-fill-remaining-space { flex: 1 1 auto; }
请帮忙
更新 这是一个 Stackblitz 示例 --> https://stackblitz.com/edit/angular-xa3n5i
【问题讨论】:
-
你能添加一个stackblits例子吗
-
@AymenTAGHLISSIA 我刚刚添加了stackblitz示例stackblitz.com/edit/angular-xa3n5i
标签: angular sass angular-material mat-sidenav