Lan*_*rks 6 angular2-forms angular
我正在创建login.component.html,在此期间我创建一个输入字段,然后将其绑定到email我的变量中login.component.ts.最初我写的是:
<input type="text" placeholder="Enter Email" id="email"
[(ngModel)] = "email" name = "email" required #email="ngModel"/>
Run Code Online (Sandbox Code Playgroud)
但在我将其更改为:
<input type="text" placeholder="Enter Email" id="email"
[(ngModel)] = "email" name = "email" required #em="ngModel"/>
Run Code Online (Sandbox Code Playgroud)
到底发生了什么#em="ngModel",为什么我只能使用难以置信的特定值?
表单验证文档中提到了您引用的语法,它们解释了:
模板variable(
#name)具有值"ngModel"(alwaysngModel).这将为您提供NgModel与此控件关联的Angular 指令的引用,您可以在模板中使用该指令来检查控件状态,例如valid和dirty.
问题是你有一个email在你的@Component类上命名的属性和一个在其模板中命名的引用变量email.你不能同时拥有两者,因此你看到错误:
Error: Cannot assign to a reference or variable!
Run Code Online (Sandbox Code Playgroud)
重命名属性或引用变量(在您更改后者的情况下em)修复了问题.您不仅限于"令人难以置信的特定值",您可能已更改为任何不属于属性的有效标识符.
小智 6
几天前我也遇到了同样的问题,当我对其进行研发时,我发现
#var="ngModel" exports NgModel into a local variable called "var".
Run Code Online (Sandbox Code Playgroud)
通过这个我们可以检查控制状态,例如valid和dirty和touched
| 归档时间: |
|
| 查看次数: |
4042 次 |
| 最近记录: |