ngForm引用变量在ng-template中返回undefined

时间:2018-06-15 10:45:04

标签: javascript angularjs angular angular4-forms

我正在尝试在自定义组件中注入表单,我正在动态加载该组件。对于这种情况,在引用ngForm模板变量时,我得到了未定义:

<app-custom-component [template]="myTemplate">
    <ng-template #myTemplate>
        <form #myForm="ngForm">
            .....
        </form>
    </ng-template>
</app-custom-component>

现在在component.ts

@ViewChild('myForm') myForm;
ngAfterViewInit() {
    this.buyAmountForm.valueChanges.subscribe(values => this.validate()); //--> undefined, no valueChanges
  }

如果我删除ng模板,一切正常。有任何解决方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

使用{descendants: true}

访问后代
@ViewChild('myForm', {descendants: true}) myForm;