ngForm.controls打印未定义的角度

时间:2018-07-05 08:24:45

标签: javascript html angular dom undefined

我有这个html可以进行角度测试:

<form name="formCercarUsiari" #formCercarUsuari="ngForm" class="tab-content">
  <input #inputNif class="form-control input-height" maxlength="100" type="text" placeholder="Indiqui NIF" name="nif" i18n-placeholder="From placeholder">
</form>

在我的权限内,我像这样引用:

@ViewChild('formCercarUsuari') formCercarUsuari: NgForm;

在我的测试文件中:

fit('Name should be obligatory', async(() => {
  setTimeout(() => {
    console.log(component.formCercarUsuari);
    console.log('doesnt work' + component.formCercarUsuari.controls['nif']);
  });
}));

现在第一行componet.forCercaUsuari prints: NgForm {.... controls,....}, componet.forCercaUsuari.controls期间打印undefined

我在做什么错了?

1 个答案:

答案 0 :(得分:0)

As stated in the docs

  

要使用该表单注册子控件,您需要将NgModelname属性一起使用。

<form name="formCercarUsiari" #formCercarUsuari="ngForm" class="tab-content">
   <input #inputNif ngModel class="form-control input-height" maxlength="100" type="text" placeholder="Indiqui NIF" name="nif" i18n-placeholder="From placeholder">
</form>

这应该使您可以访问表单输入。