首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从子组件中打开MdSidenav?

如何从子组件中打开MdSidenav?
EN

Stack Overflow用户
提问于 2017-01-05 14:42:16
回答 1查看 701关注 0票数 2

我正在使用angular-material2库中的MdSidenav组件,并且希望从另一个组件打开MdSidenav。因此,我想从另一个组件(即子组件)中使用局部变量#sidenav (即父组件中的)的函数。

父组件:src/app/app.component.html

代码语言:javascript
复制
<md-sidenav-container>
 <md-sidenav #sidenav>
  <h1>Hello</h1>
 </md-sidenav>

 <div class="my-content">
  <router-outlet></router-outlet>
 </div>
</md-sidenav-container>

子组件:src/app/menu/menu.component.html

代码语言:javascript
复制
<div class="menu">
 <button (click)="sidenav.open()"></button>
</div>
EN

回答 1

Stack Overflow用户

发布于 2017-01-05 14:59:13

我也有过类似的情况。你可以这样做:

代码语言:javascript
复制
<md-sidenav-container>
  <md-sidenav #sidenav>
     <h1>Hello</h1>
  </md-sidenav>

  <menu [nav]="sidenav"></menu>
</md-sidenav-container>

然后在菜单组件中:

代码语言:javascript
复制
@Input() nav;

openSideNav(){
   this.nav.open();
}
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41487803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档