how to open sidebar when click on button. i have two component 1.navbar 2.sidebar and navbar html file in have a some button like menu login when click on menu button to open sidebar (using angular material sidebar)
- layout--
│ ├── navbar
│ └── sidebar
|---services
└── app.module
navbar.component.html
<!-- <app-sidebar></app-sidebar> -->
<div class="navbar">
<!-- sync logo -->
<div class="item">
<img src="../../../assets/logo.png" alt="">
</div>
<!-- Search bar -->
<div class="item2">
<input class="search_bar" type="text" name="" value=""
placeholder="Search talent by skills ">
</div>
<!-- Login & Menu -->
<div class="item3">
<img src="../../../assets/login_black.png" alt=""><span>login</span>
<span class="menu"> <button mat-button (click)="toggleMenu()">menu</button></span>
</div>
</div>
navbar.component.ts
import { Component, OnInit,Output,EventEmitter } from'@angular/core';
// import {SideNavService} from '../../side-nav.service'
@Component({
selector: 'app-navbar',
templateUrl: './navbar.component.html',
styleUrls: ['./navbar.component.scss']
})
export class NavbarComponent implements OnInit {
@Output() menuState:EventEmitter<any> = new EventEmitter();
constructor() { }
open:boolean;
showMenu = false;
toggleMenu() {
console.log("inside togglemenu");
this.showMenu =!this.showMenu;
this.menuState.emit(this.showMenu)
}
ngOnInit(): void {
}
emit(){
}
}
sidebar.component.html
<mat-drawer-container class="example-container">
<mat-drawer #sidenav mode="over" opened="true" position='end' >Drawer content</mat-drawer>
<mat-drawer-content>Main content
<!-- <button type="button" (click)="sidenav.toggle()" name="button"></button> -->
</mat-drawer-content>
</mat-drawer-container>
sidebar.component.ts
import { Component, OnInit,Input ,OnChanges} from '@angular/core';
@Component({
selector: 'app-sidebar',
templateUrl: './sidebar.component.html',
styleUrls: ['./sidebar.component.scss']
})
export class SidebarComponent implements OnInit ,OnChanges{
@Input() subMenuState:any;
constructor() { }
opened:boolean;
showMenu = true;
ngOnInit(): void {}
ngOnChanges(){
console.log("inside ngOnChanges with subMenuState: ",this.subMenuState);
this.showMenu = this.subMenuState;
}
}
i want like this