在angualr 官网教程中,响应式表单的formControlName 这个指令,加了[ ],使用时,学他也加上了,怎么也不出效果。后来去掉可以了。
教程中可以,是因为他在前端定义了name= formcontrol(''),
可以写成[formControl]='name'.
教程下面给出这样的做法:
-
显然这样是不能写成:[formControlName]='firstName因为firstName不是属性,而是Formgroup 下的一个controlprofileForm = new FormGroup({ firstName: new FormControl(''), lastName: new FormControl(''), });
后续:
这个问题其实很通用:在响应式表单中,有好些地方都是[] 要不要加的问题。要格外注意:
总之:在ts 中是变量,就要加。不是变量,而是变量的名称,就不要加!一个都不能错。
这是封装的完备的例子。