【发布时间】:2021-02-28 15:50:41
【问题描述】:
我使用materialize-css 创建了一个角形。这是 HTML
<form [formGroup]="addFeedForm" (ngSubmit)="addFeed(addFeedForm.value)" class="col s12">
<div class="row">
<div class="input-field col m6 s12">
<select formControlName="departmentId" #feedDepartment>
<option value=0>General</option>
<option [value]="department.id" *ngFor="let department of departmentList">{{department.name}}</option>
</select>
<label>Department</label>
</div>
<div>
<button type="button" class="btn waves-effect waves-light col s3 offset-s5" (click)="resetAddFeedForm()">Reset</button>
<button type="submit" [disabled]="!addFeedForm.valid" class="btn waves-effect waves-light col s3 offset-s1">Add</button>
</div>
</div>
</form>
这就是我创建角形的方式
this.addFeedForm = new FormGroup({
departmentId: new FormControl(0,Validators.compose([Validators.required])),
});
当我提交时,我会提交
addFeed(data: any): void {
console.log(data);
this.addFeedForm.reset({ departmentId: 0 });
}
如果我将部门选择选项更改为其他内容,并通过将departmentId 设置为 0 来提交和重置表单,则应在选择选项中选择“General”。
它不是在 UI 上更新,而是在控制台上,它将 departmentId 设置为 0。
在 UI 上选择的选项不同,但在控制台上,departmentId 为 0
更新:这是堆栈闪电战
【问题讨论】:
-
如果现有答案都不能解决您的问题,请提供一个最小的堆栈闪电战来展示您的问题。您在问题中发布的代码似乎正确重置了 UI:stackblitz.com/edit/angular-4degxv
-
这与
materialize-css的工作方式有关。例如,结帐stackoverflow.com/q/30341095/9423231。 2 路数据绑定似乎不起作用,您必须手动执行很多操作。如果你的整个 UI 都是用 materialize 制作的,那么使用 Angular Materialize 包装器ngx-materialize 可能会更容易。
标签: html angular angular-reactive-forms