当前位置:  开发笔记 > 编程语言 > 正文

对子组件执行方法

如何解决《对子组件执行方法》经验,为你挑选了1个好方法。

我有一个父组件和一个子组件.我希望能够从父组件上的某个方法调用子组件上的一些子方法.有没有办法获得父类的子组件实例的引用并调用子的公共方法?

@Component({
    selector: 'child-component'
})
@View({
    template: `
child
` }) class ChildComponent{ constructor () { } doChildEvent () { // some child event } } @Component({ selector: 'parent-component' }) @View({ template: ` `, directives: [ ChildComponent ] }) class ParentComponent { private child:ChildComponent; constructor () { } onSomeParentEvent() { this.child.doChildEvent(); } }

我尝试在模板中对子进行哈希并在类中引用它但没有成功.



1> drew moore..:

ViewChild是为了什么:

//don't forget to import ViewChild

class ParentComponent {
    @ViewChild(ChildComponent) private child:ChildComponent;

    constructor () {
       //this.child is undefined because constructor is called before AfterViewInit
    }

    onSomeParentEvent() {
        //this.child contains the reference you're looking for 
        this.child.doChildEvent();
    }
}

假设在onSomeParentEvent被激活之后AfterViewInit, this.child将包含对子组件的引用.

推荐阅读
家具销售_903
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有