我正在 Pluralsight 上学习 Angular,我有一个关于我目前正在学习的课程的问题。
当模板引用变量被赋值时,我对它们背后的推理感到困惑。例如,如果您放入#name
一个<input>
标签,我知道 name 现在可以引用输入标签及其关联值。我的问题是关于诸如#name="ngModel"
查看 Angular 文档,我发现:
您需要一个模板引用变量来从模板中访问输入框的 Angular 控件。在这里,您创建了一个名为 name 的变量,并为其赋予了值“ngModel”。
我还发现这个有用的答案可以指导我走上正确的道路。
但是我仍然不清楚分配模板引用变量ngModel
会增加什么值。
我目前正在写的表格的一部分:
<form #form="ngForm" (ngSubmit)="onSubmit(form)">
<div class="form-group">
<label for="name">Name</label>
<input id="name" name="name" class="form-control" [(ngModel)]="userSettings.name"
required #nameField="ngModel"
(blur)="onBlur(nameField)"
[class.field-error]="form.submitted && nameField.invalid">
<div [hidden]="!form.submitted || nameField.valid"
class="alert alert-danger">
Enter a name
</div>
</div>
打字稿文件的一部分:
@Component({
selector: 'app-user-settings-form',
templateUrl: './user-settings-form.component.html',
styleUrls: ['./user-settings-form.component.css']
})
export class UserSettingsFormComponent implements OnInit {
originalUserSettings: UserSettings = {
name: null,
emailOffers: null,
interfaceStyle: null,
subscriptionType: null,
notes: null
};
userSettings: UserSettings = { ...this.originalUserSettings };
constructor() { }
ngOnInit(): void {
}
#nameField
仅 using与 using#nameField="ngModel"
以及#form
vs有什么区别#form="ngForm"
?