angular-reactive-forms 相关问题

关于角度反应形式的问题,一种用于以反应式方式创建表格的角度技术。将此标记用于不是特定于单个Angular版本的问题。

如何以角度反应形式重新验证

我有一个像这样的简单表格: 初始化登录表单(){ 返回新的表单组({ 用户电子邮件:新的 FormControl('', { 验证器:[Validators.required,Validators.email], 更新: 的...

回答 1 投票 0

使用反应式表单和 ChangeDetectionStrategy.OnPush 显示验证消息

我正在尝试将应用程序迁移为使用 ChangeDetectionStrategy.OnPush。然而,我在尝试使用一些反应形式时遇到了一些阻碍。 我有一个可重复使用的控件,显示

回答 3 投票 0

Angular - ValueChanges 不更新父表单(ControlValueAccessor)

我有以下代码 https://stackblitz.com/edit/angular-control-value-accessor-form-subscribed-val-egkreh?file=src/app/app.component.html 我已经为表单字段传递了默认值,但是

回答 1 投票 0

Angular - 尝试在使用反应式表单和数组时不需要最后一个表单控件 - 使用添加和删除按钮

这不太管用。 我有一个日期对(开始)和(结束)的数组,最初加载三个,并有两个按钮,添加和删除。添加按钮添加一个新的对,但前提是最后一个表单...

回答 1 投票 0

Angular Reactive 表单:如何重置表单状态并在提交后保留值

以 Angular 反应形式。提交成功后如何只重置表单的状态? 这是过程: 根据服务结果创建表单并设置值 修改数值并提交表单 我...

回答 9 投票 0

Angular 17 - 如何将 errorStateMatcher 添加到表单数组,但要以连续索引遍历 formGroups

以下代码有效, https://stackblitz.com/edit/stackblitz-starters-wnququ?file=src%2Fmain.html 但我需要更进一步,确保索引 (x) 处的 FormGroup 的结束日期是...

回答 1 投票 0

<mat-select>选择了值设置但未显示

我有一个像这样的父组件。 我有一个像这样的父组件。 <form [formGroup]="validateFormGroup"> <div> <mat-form-field> <input matInput placeholder="Name" maxlength="150" formControlName="name" required> </mat-form-field> </div> </form> <div class=""> <app-calendar-time-zones (getSelectedTimeZone)="setTimeZoneSelected($event)" ></app-calendar-time-zones> </div> 在 app-calendar-time-zones 组件中,这是我的 HTML 代码 <div class="calendar-container"> <mat-form-field> <mat-label>Select time zone</mat-label> <mat-select [(ngModel)]='selectedTimeZone.displayName' class='form-control' > <mat-option *ngFor="let timezone of filteredTimeZones | timezonesFilter : searchValue" [value]="timezone.id" (click)="timeZoneSelected(timezone)"> {{timezone.offset + ' ' + timezone.displayName}} </mat-option> </mat-select> </mat-form-field> </div> 在子组件 Ts 文件中,我正在设置这样的值,但其垫选择元素未设置为所选值。 this.selectedTimeZone = this.filteredTimeZones[0]; // selectedTimeZone i am getting here is this == {id: "Africa/Abidjan", displayName: "Greenwich Mean Time", useDaylightTime: false, rawOffset: 0, offset: ""} 显示以下空下拉列表。但是,如果我单击下拉图标,我就可以看到所有选项。 and in the browser if i inspect mat-select element. ngModel value is setting . 要自动选择,通过 ngModel 传递的值必须与选项的 value 匹配。 所以,我猜 selectedTimeZone.displayName 与绑定到您的选项的任何 timezone.id 都不匹配。 这对我有用 <mat-form-field> <mat-label for="">Doctor Name</mat-label> <mat-select [(ngModel)]="patientInfo.doctorName"> <mat-option value="" selected></mat-option> @for (doctor of doctorsList(); track doctor) { <mat-option [value]="doctor.name">{{ doctor.name }}</mat-option> } </mat-select> </mat-form-field>

回答 2 投票 0

Angular - 使用电话指令将值粘贴到控件以格式化值时,验证器不起作用

我们在项目中使用 Angular 17 和响应式表单。 我们编写了一个自定义指令,将输出格式化为美国电话号码格式 111-222-3333。 我们看到的是,当

回答 1 投票 0

复制时带有验证器的 Angular Phone 指令不起作用

我们在项目中使用 Angular 17 和响应式表单。 我们编写了一个自定义指令,将输出格式化为美国电话号码格式 111-222-3333。 我们看到的是,当

回答 1 投票 0

如何将表单传递到 Angular Material 对话框

我需要创建一个可重用的表单对话框来可视化不同的表单。我正在使用 Angular 17 和 Angular Material。在我的组件中,我试图定义一个这样的表单: 我需要创建一个可重用的表单对话框来可视化不同的表单。我正在使用 Angular 17 和 Angular Material。在我的组件中,我试图定义这样的形式: <form #myForm="ngForm" (ngSubmit)="submitForm(myForm)"> <mat-form-field> <input matInput [matDatepicker]="picker" placeholder="Choose a date" name="date" ngModel required> <mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle> <mat-datepicker #picker></mat-datepicker> <mat-error *ngIf="myForm.controls.date.invalid && myForm.controls.date.touched">Please choose a date.</mat-error> </mat-form-field> <mat-form-field> <input matInput placeholder="First Name" name="firstName" ngModel required> <mat-error *ngIf="myForm.controls.firstName.invalid && myForm.controls.firstName.touched">Please enter a first name.</mat-error> </mat-form-field> <button mat-raised-button color="primary" type="submit" [disabled]="myForm.invalid">Submit</button> </form> 在我的 .ts 文件中,我有一个打开对话框的方法: @ViewChild('myForm', { static: true }) public myForm: ElementRef; public openDialog(): void { const dialogRef = this.dialog.open(FilterFormDialogComponent, { width: '460px', disableClose: true, autoFocus: false, panelClass: 'form-dialog', data: { form: this.myForm // reference to the form previously defined }, }); } 在我的filterFormDialogComponent中,我尝试使用ng-content在其html中可视化插入的表单。但是,我无法想象该表格。 是否可以使用 MAT_DIALOG_DATA 将表单或其他组件传递到对话框中?如果是这样,如何将其正确显示到对话框的html中? 您正在将 FormGroupDirective 传递到对话框。您可以尝试像这样在对话框数据中传递表单 form: this.ngForm.form

回答 1 投票 0

导航到同一页面后,无法订阅 NgOnInit 中可观察的表单控件 valueChanges

我有一个使用不同参数导航到自身的页面。这使得 NgOnInit 不会再次执行。可悲的是,在 NgOnInit 中,我订阅了一个可观察的对象来处理值变化,我...

回答 1 投票 0

验证表单中是否至少填写了一个字段(复选框或其他文本字段),如果两者都为空,则在 Angular 中显示错误?

要验证表单中是否至少填写了一个字段(复选框或“otherText”字段),请为表单组创建一个自定义验证器。该验证器将检查是否在...

回答 1 投票 0

在可观察对象内创建的垫表内形成数组

我有一个父组件:父列表包含两个子组件(第一个子列表,第二个子列表) 在第二个子列表组件中:我有一个 mat 表,用于接收要显示的数据...

回答 1 投票 0

@for 在removeAt(index) 上的表单表现得很奇怪

编辑:稍微改进了 stackblitz,以便人们可以并排比较它。 在 Angular 17+ 中,我想使用新的模板语法来迁移我的项目,这似乎有一个奇怪的行为......

回答 1 投票 0

如何迭代formbuilder.group控件?

打字稿 formGroup = this.fb.group({}); 构造函数(私有只读 formBuilder:UntypedFormBuilder){} ngOnInit() { this.setControls(); } settControls() { this.formGroup.addControl('名称', t...

回答 1 投票 0

如何通过模板outlet动态添加formControls?

所以,我有一个问题,我有一个带有表单的基础组件。但我希望能够向其中添加另一个字段。为什么?因为我有四个页面,结构非常相似,但有所不同......

回答 1 投票 0

如何将额外参数传递给 Angular 中的异步验证器(反应式表单)?

我有以下异步验证器。如果我想将它用于反应形式,我必须将它作为第三个参数传递 slug: [null, [Validators.required], [CustomValidators.slug]], 我怎样才能通过额外的

回答 2 投票 0

在响应式表单中在哪里初始化 FormGroup?

在严格模式下使用 Angular 11 和 Typescript 4 我有: 导出类 ContactComponent 实现 OnInit { 表单:表单组; 构造函数(私有formBuilder:FormBuilder){} ngOnInit() {...

回答 2 投票 0

如何使用 ssr 应用程序使我的 formControlName 在 Angular 17 的子输入组件中工作

我收到此错误: main.ts:6 ERROR 错误:NG01050:formControlName 必须与父 formGroup 指令一起使用。您需要添加一个 formGroup 指令并向其传递现有的 FormG...

回答 1 投票 0

如何将 ng-select 包装在自定义表单控制器中?

我尝试创建一个 stackblitz 来展示我正在谈论的内容,但我根本无法让它工作,所以我只能寻求帮助。我有 2 个组件: 组件 1 是自定义表单

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.