在Component(typescript文件)中访问md-sidenav-layout对象

时间:2016-05-24 12:54:04

标签: angular angular-material

我在我的申请中使用md-sidenav 将使用以下语法为md-sidenav分配对象:

<md-sidenav #start

所以这里&#34;开始&#34;将保存md-sidenav的所有变量/方法,我们可以执行各种操作,如start.close(),start.toggle()等。

如果我们想通过.ts文件执行这些操作,我们该怎么做。我们如何才能开始&#34;开始&#34; .ts文件中的对象。

我已经创造了相同的plunker。

Plunker:http://plnkr.co/edit/Q2dEhOA9dzDzBlLaxmYT?p=preview

1 个答案:

答案 0 :(得分:3)

您可以使用@ViewChild()从模板变量中获取对组件实例的引用:

  class MyComponent {
    @ViewChild('start') sideNav;

    ngAfterViewInit() {
      // only set when ngAfterViewInit is called (not for example in the constructor)
      console.log(this.sideNav);
    }
  }