Angular 2 form elements'属性-语法正确

Angular 2 form elements' attributes - correct syntax?

本文关键字:属性 语法 form elements Angular      更新时间:2023-09-26

我正在阅读这篇文章,在文章中我看到:

<input type="search" [formControl]="seachControl">

<input type="text" formControlName="street">

我想知道正确的语法是陈述formControlformGroup。我能不能写点

<input type="text" [formControlName]="street">

<input type="text" [attr.formControlName]="street">

<input type="text" [formControl]="street"> ?更具体地说,这三种情况有什么不同?

[formControl]="seachControl"是我们所说的模型绑定,它绑定到主要的表单元素,即搜索。

当你有一个单一的表单元素,即search,你只是简单的模型绑定到任何variable你在你的class中创建,并记住变量的类型你绑定到。

<input type="text" formControlName="street">

因为这里的street是在主formControl元素中创建的,所以你不能直接访问street变量。因此,这个指令所做的是告诉这个标签的主/父元素应该绑定到你在主formControl中创建的street

至于

<input type="text" [formControlName]="street">

我不知道,但我认为formControlName实际上不做绑定它是告诉这个标签需要绑定到什么。语法表明它会尝试在你的类绑定中寻找street变量。

你可以看到他说。

这就是formControlName指令发挥作用的地方。它非常类似于模板驱动表单中的ngModelname属性组合。每个表单控件都应用了一个formControlName指令,因此我们可以在外部表单

上注册控件。

所以你只需要绑定外部模型,因为它存在/实例化在你的classformControlNameformGroupName将照顾内部元素。