Мне нужно автоматически закрывать боковую панель материалов сразу после навигации, нажимая на элементы навигации боковой панели.но, похоже, это не работает естественным образом.Я создаю Stackblitz для своей проблемы:
Сайт редактора Stackblitz: https://stackblitz.com/github/adnanebrahimi/MaterialSidebarIssue
HTML:
<mat-sidenav #drawer class="sidenav" fixedInViewport
[attr.role]="(isHandset$ | async) ? 'dialog' : 'navigation'"
[mode]="(isHandset$ | async) ? 'over' : 'side'"
[opened]="(isHandset$ | async) ? 'false' : 'true'">
Компонент:
export class SidebarLayoutComponent {
isHandset$: Observable<boolean> =
this.breakpointObserver.observe(Breakpoints.Handset)
.pipe(
map(result => result.matches)
);
constructor(private breakpointObserver: BreakpointObserver) {}
}
У нас есть isHandset$
в качестве наблюдаемого, чтобы определить, является ли устройство трубкой или нет с помощью этой функции, мы просто открываем его, если оно ложно, и закрываем его, если оно истинно, чтобы быть трубкой.Но я также хочу закрыть боковую панель, когда мы начнем переходить на другие страницы.
Спасибо.