1
我想知道是否有一種方法在另一個組件中定位模板引用變量。我在這裏要做的是通過創建一個通過TRV'sidenav'調用sidenav的開放函數來觸發side nav。有沒有一種方法可以從Angular 2中的另一個組件中定位模板引用變量?
app.component.html '
<md-sidenav-layout>
<md-sidenav #sidenav (open)="mybutton.focus()">
Start Sidenav.
<br>
<button md-button #mybutton (click)="sidenav.close()">Close</button>
</md-sidenav>
<top-bar></top-bar>
<main class="main" (openNav)="sidenav.open()">
<router-outlet></router-outlet>
</main>
</md-sidenav-layout>
`
topbar.component.html '
<md-toolbar color="primary">
<button class="app-icon-button" (click)="openSideNav()">
<i class="material-icons app-toolbar-menu">menu</i>
</button>
<span [routerLink]="['']">Home</span>
<span [routerLink]="['test']" class="navlink">Test</span>
<span class="navlink" (click)="signout()">signout</span>
</md-toolbar>
`
個topbar.component.ts `
import { Component, OnInit, Output, EventEmitter } from '@angular/core';
@Component({
selector: 'top-bar',
templateUrl: './topbar.component.html',
styleUrls: ['./topbar.component.css']
})
export class TopbarComponent implements OnInit {
constructor() { }
@Output() openNav = new EventEmitter();
openSideNav(){
console.log(this.openNav.emit());
this.openNav.emit();
}
ngOnInit() {
}
}
`
是否有可能對我來說,目標在從頂欄指令的應用程序組件的模板變量?
我不認爲這是可能的,但你可以將它綁定到頂欄中的事件,然後決定何時打開/關閉導航 – galvan