【发布时间】:2021-12-01 00:56:58
【问题描述】:
我正在努力创建一个表单,该表单将通过 API 提供控件。表单呈现没有任何问题。但是,formControlName 属性在呈现时从 HTML 中丢失。这会导致mat-datepicker 出现问题。因为它要求formControlName 与控件相关联
这是我的模板
<div *ngFor="let item of list; let i=index;">
<mat-form-field appearance="fill">
<mat-label>{{item.control["Caption"]}}</mat-label>
<input *ngIf="(item.control['Type'] == "Text")" matInput formControlName="{{item.key}}" >
<input *ngIf="item.control['Type'] == 'Date'" matInput [matDatepicker]="i" placeholder="DD/MM/YYYY" [formControlName]="item.key" >
<mat-datepicker-toggle *ngIf="item.control['Type'] == 'Date'" matSuffix [for]="i"></mat-datepicker-toggle>
<mat-datepicker *ngIf="item.control['Type'] == 'Date'" #i></mat-datepicker>
</mat-form-field>
</div>
</form>
现在的问题是日期控件已呈现,但在单击控件上的日历图标时未出现日历弹出窗口。但是,如果我在控件中手动输入日期,则它会正确提交。
我在这里错过了什么。我需要能够将mat-datepicker 与呈现的任何和所有日期控件绑定。
【问题讨论】:
标签: angular typescript angular-material angular-directive