切换md-sidenav模式(Angular Material 2)

Mic*_*oli 4 menu angular-material2 angular

我有兴趣改变md-sidenav- 从Angular Material 2 - 模式从侧面(桌面)到over(移动).有没有办法以编程方式更改它?谢谢

Kim*_*m T 11

基于Steve G的解决方案,您可以更新app.component.html

<md-sidenav [mode]="isLargeScreen() ? 'side' : 'over'" [opened]="isLargeScreen()"></md-sidenav>
Run Code Online (Sandbox Code Playgroud)

然后在app.component.ts中

isLargeScreen() {
  const width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
  if (width > 720) {
      return true;
  } else {
      return false;
  }
}
Run Code Online (Sandbox Code Playgroud)

这会在默认情况下打开桌面上的侧边栏,在移动设备上会叠加但默认情况下会隐藏!