Элементы управления Angular Reactive Forms против Get

В чем разница между тем, когда я получаю значения в реактивных формах следующими способами:

this.someForm.controls['firstName'].value
this.someForm.get('firstName').value

public someForm: FormGroup = this.formBuilder.group({
  firstName: ['', Validators.required],
});

this.someForm.controls['firstName'].value
this.someForm.get('firstName').value<br>

Выше моя форма и два разных способа получить значения из формы. Но в чем разница ч / б в обе стороны, если есть?


person Ankit singh    schedule 08.08.2019    source источник
comment
netbasal.com/, в основном нет разницы (на момент), но никто не уверен, что это не изменится в будущем   -  person Eliseo    schedule 08.08.2019
comment
Да, я также привык думать, что различий нет, но я видел некоторое поведение diff, когда использовал valueChanges в обоих сценариях.   -  person Ankit singh    schedule 08.08.2019


Ответы (1)


Между этими двумя не так много различий, но команда Angular может изменить структуру FormGroup в будущем, и если мы будем использовать свойство controls напрямую, это может привести к критическим изменениям, тогда как метод get() может измениться, чтобы отразить новую структуру. .

FormGroup.get предназначен для доступа к целевому элементу управления формой по его пути, что упрощает получение целевого элемента управления из многослойной формы встраивания, а также делает код понятным и легким для понимания.

Об этом не так много информации, но вы можете прочитать что-то очень похожее здесь,

person Ganesh    schedule 08.08.2019