-1

我想问一下为什么表单组指令不区分大小写?在构造函数中,它的写为“FormGroup”(以及初始化),而在 html 标签指令中写为“formGroup”,我想知道这是否是一个错误,或者它可能是有意的。

谢谢

代码参考:构造函数

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

HTML 标记指令

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

我希望在构造和 html 标记指令之间具有相同的“FormGroup”一致性

太感谢了

4

2 回答 2

2

[formGroup]你在 HTML 模板FormGroup中使用的和你在 TypeScript 类中使用的是两个不同的东西。

[formGroup]您在 HTML 模板中使用的是属性指令。

FormGroup你在 TypeScript 组件类中使用的是一个类。

名称没有一致性,因为这些是 Angular 团队在创建指令选择器和类时遵循的约定。

这是指令选择器要遵循的命名约定及其背后的基本原理:

使用小驼峰命名指令的选择器。

以下是类名称及其背后的基本原理要遵循的命名约定:

命名类时请使用大写驼峰式。

于 2019-01-03T06:46:41.497 回答
0

如果您查看源代码,则该指令的选择器给出为[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
于 2019-01-03T06:27:49.040 回答