親コンポーネント(toggleSidebar()
)の子コンポーネントの要素(#sidenav
)にアクセスしたいとします。私は成功せず、このソリューションを適用しようとしました:angular 2/typescript: get hold of an element in the template親コンポーネント内の子コンポーネントの要素への参照の取得
私の子コンポーネント:
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-sidebar',
template: `
<md-sidenav #sidenav mode="side" class="app-sidenav">
Sidenav
</md-sidenav>
`,
styleUrls: ['./sidebar.component.css']
})
export class SidebarComponent implements OnInit {
constructor() { }
ngOnInit() {
}
}
私の親コンポーネント:
import { SidebarComponent } from './sidebar/sidebar.component';
import { Component, ViewChild } from '@angular/core';
@Component({
selector: 'app-root',
template: `
<app-sidebar></app-sidebar>
<app-toolbar (toggleSidebar)="toggleSidebar()"></app-toolbar>
`,
styleUrls: ['./app.component.css']
})
export class AppComponent {
@ViewChild('sidenav') sidebar: SidebarComponent;
constructor() { }
toggleSidebar() {
this.sidebar.toggle();
}
}
親コンポーネントでsidenavは何ですか? – echonax
あなたは ' app-sidebar>'を試しましたか? –
yurzui
@yurzuiはい、うまくいきません – Gabriel