在模板中,我已经看过两种方法:
myForm.controls.StartDate.value
和
myForm.get('StartDate').value
我认为"控制"现在是未来的方法,但是在执行ng build -prod
时,这会破坏构建。什么是最佳实践,不会破坏构建?
我研究了https://angular.io/guide/reactive-forms,它们在 FormGroup
和 .controls
上使用 .get()
(在模板中(在 FormArray
上使用。也许就是这样,因为在FormArray
上具有非命名控件。
如https://toddmotto.com/angular-2-forms-reactive中所述,使用.get()
和.controls
之间没有区别,但是第一个确实为您处理错误。
在我的项目中,我在formGroup上使用.get()
,而且效果很好。无法告诉您现在哪种方法更好。如果.controls
与IDE提示配合使用,那应该是最好的 - 如果不是很难说明差异。
在引擎盖下,https://github.com/angular/angular/blob/master/packages/forms/src/model.ts#l37 .get()
使用.find()
和.find()
使用.controls
。因此,两者都可以使用。使用其中任何一个都不应破坏您的产品的构建。