你應該可以使用ContentChild修飾器來訪問它。
家長:
import {ChildComponent} from "../child-path";
export class ParentComponent {
@ContentChild(ChildComponent) childComponent: childComponent;
var parentVar = "data";
...
ngAfterViewInit(){
childComponent.callYourFunction(parentVar);
}
}
更新:請注意,我本來 「ViewChild」 - 這裏的原始鏈接。
更多,請參閱: http://learnangular2.com/viewChild/
編輯:
見岡特的評論 - 他是正確的,ViewChild不會在這種情況下工作。 ContentChild將是一個類似但正確的答案。
https://angular.io/docs/ts/latest/api/core/index/ContentChild-decorator.html
編輯2:
有關問題的NG-內容類型,看起來也許你可以這樣做:
在家長:
<parent-component>
<child-component #child></child-component>
</parent-component>
@ContentChild('child') contentChild: ChildComponent
'@ContentChild()'應該做你想要什麼樣的HTTP ://stackoverflow.com/questions/32693061/angular-2-typescript-get-hold-of-an-element-in-the-theplate/35209681#35209681 –
還有一些相關的信息在這裏:https://github.com/angular/angular/issues/12758 – BBaysinger