- 有条件的进行必填项验证 conditional required
项目中需要使用有条件的必填项验证
默认用法
<textarea placeholder="请输入..." [(ngModel)]="item.summary"
minRows="1" maxRows="2"
cols="30" name="summary" #summary="ngModel"
required
></textarea>
<textarea placeholder="请输入..." [(ngModel)]="item.summary"
minRows="1" maxRows="2"
cols="30" name="summary" #summary="ngModel"
[required]="data.actionType === 'recommend'"
></textarea>
- 在Safari中的坑,如果使用了form,请一定要用最标准的写法,即
(ngSubmit)="submit(data)”
,在下方的buttons中有一个button的type=“submit",但是不能添加click事件,否则在Safari中会刷新标签页
错误写法
<form #catalog="ngForm" class="redef-dialog">
<div class="dialog-bottom">
<button [disabled]="!catalog.form.valid" type="submit"
md-button class="sure" (click)="dialogRef.close('cancel')">
确定
</button>
<button type="button" class="cancel" (click)="dialogRef.close('cancel')">
取消
</button>
</div>
</form>
正确写法
<form #catalog="ngForm" class="redef-dialog" (ngSubmit)="dialogRef.close(data)">
<div class="dialog-bottom">
<button [disabled]="!catalog.form.valid" type="submit"
md-button class="sure">确定</button>
<button md-button type="button" class="cancel" (click)="dialogRef.close('cancel')">
取消</button>
</div>
</form>