在没有 FormGroup 的子组件中嵌套表单

问题描述 投票:0回答:1

我希望能够在其他地方重用我的表单的一部分,所以我想将它分成它自己的组件。我仍然想通过父组件提交表单 - 子组件中没有按钮或任何内容。如果可以的话,我也不想使用 FormGroup。这可能吗?

这就是我正在努力做的事情:

<parent>
  <form #f="ngForm" (ngSubmit)="onSubmit(f)" id="f">
    <child></child>
    <input type="checkbox" id="terms" #terms="ngModel" ngModel name="terms"> 
    <input type="submit" id="btnSubmit">
  </form>
</parent>

理想情况下,孩子会返回一个带有表单信息的对象,如下所示(如果这是不可能的,但可以做其他事情也可以):

@Component({
   selector: 'child', 
   ...
})
export class ChildComponent implements OnInit {
  ...
  createObject(form:NgForm) {
    let user = new userProfile(); 
    user.email = form.controls["email"].value;
    user.username = form.controls["username"].value;
    ...
    return user;
  }
}
angular typescript forms parent-child
1个回答
0
投票

在父级中使用@ViewChild来调用子级中提取表单数据的方法。

参考:https://angular.dev/api/core/ViewChild

© www.soinside.com 2019 - 2024. All rights reserved.