Директивы FormGroup

Я хочу спросить, почему директивы группы форм не чувствительны к регистру? в конструкторе написано "FormGroup" (а также инициализация), в то время как в директивах тега html написано "formGroup", мне интересно, если это ошибка или, возможно, она предназначена.

Спасибо

Код Ссылка: Конструктор

import { FormGroup, FormControl } from '@angular/forms';
...
export class EmployeeService {
constructor() { }
form: FormGroup = new FormGroup({...})

HTML TAG DIRECTIVES

<form [formGroup]="service.form" class="normal-form">

Я ожидаю, что будет одинаковая согласованность FormGroup между директивами конструкции и тегами html.

огромное спасибо

2 ответа

[formGroup] что вы используете в шаблоне HTML и FormGroup что вы используете в классе TypeScript две разные вещи.

[formGroup] то, что вы используете в шаблоне HTML, является директивой атрибута.

FormGroup что вы используете в классе компонентов TypeScript, это класс.

В именах нет согласованности, потому что это соглашения, которым следовала Angular Team при создании их Селекторов Директив и Классов.

Вот соглашение о присвоении имен, которое следует соблюдать для селекторов директив, и обоснование этого:

Используйте нижний регистр верблюдов для именования селекторов директив.

Вот соглашение об именах, которое следует соблюдать для названий классов и обоснования этого:

Использовать верхний регистр верблюдов при именовании классов.

Если вы посмотрите на исходный код, селектор для директивы имеет вид [formGroup]

https://github.com/angular/angular/blob/master/packages/forms/src/directives/reactive_directives/form_group_directive.ts

код из источника:

@Directive({
    selector: '[formGroup]',
    providers: [formDirectiveProvider],
    host: {'(submit)': 'onSubmit($event)', '(reset)': 'onReset()'},
    exportAs: 'ngForm'
})
export class FormGroupDirective extends ControlContainer implements Form
Другие вопросы по тегам