Javascript 角度错误:如果在表单标记中使用ngModel,则必须设置name属性或

Javascript 角度错误:如果在表单标记中使用ngModel,则必须设置name属性或,javascript,angular,Javascript,Angular,关于此错误,有许多类似的问题和答案:如果在表单标记中使用ngModel,则必须在ngModelOptions中设置name属性或将表单控件定义为“standalone”。解决方案是按照消息中的描述定义name属性。但这对我不起作用。我的app.component.html中有下一个标记: <form id="form1" name="form1" #form="ngForm"> <div class="form-group"> <input id="in

关于此错误,有许多类似的问题和答案:如果在表单标记中使用ngModel,则必须在ngModelOptions中设置name属性或将表单控件定义为“standalone”。解决方案是按照消息中的描述定义name属性。但这对我不起作用。我的app.component.html中有下一个标记:

<form id="form1" name="form1" #form="ngForm">
  <div class="form-group">
    <input id="input1" name="input1" [(ngModel)]="metaScript" />
    ...

...

我在app.component.html第3行中仍然存在错误:如果在表单标记中使用ngModel,则必须设置name属性,或者…

发生此错误是因为在html标记中,还有一行没有name属性

<form id="form1" name="form1" #form="ngForm">
  <div class="form-group">
    <input id="input1" name="input1" [(ngModel)]="metaScript" />
    ... 
    <input id="input2" [(ngModel)]="metaScriptMessage"/>
  </div>
</form>

... 
但是浏览器仍然报告第一行有错误。如果在这两者之间有其他因素,就很难发现错误的根源。

首先,请将FormsModule插入您的app.module.ts

import { FormsModule }   from '@angular/forms';
@NgModule({
  imports: [
    FormsModule,
    .......
  ]
})
现在在模板app.component.html文件中

<form id="form1" name="form1" #form="ngForm">
  <div class="form-group">
    <input type="text" id="input1" name="input1" [(ngModel)]="metaScript" />
    ...

...
注意:要求您像上面那样在输入元素中输入type=“text”