【发布时间】:2020-12-16 21:04:02
【问题描述】:
我正在为我的 Angular 9 项目使用 Angular 模式验证模板驱动表单。 我有我需要在我的表单中验证的属性列表,所以我试图将该 html 代码放在 *ngFor 循环中以减少我的代码:
<form #securityForm="ngForm" class="validation-form adeco-form" >
<ul lass="text-left" >
<div *ngFor="let data of items[0]; let i = index;">
<li class="col-xs-12 p0 pt-sm">
<div class="col-xs-10 col-lg-11 ph0 pt">
{{securitySetting.currentSecuritySettings[data].displayName}}
</div>
<div class="col-xs-2 col-lg-1">
<input class="k-textbox mb-sm col-xs-12" name="{{data}}"
[ngModel]="securitySetting.currentSecuritySettings[data].value"
required [pattern]="securitySetting.currentSecuritySettings[data].validationExpression" ref-data="ngModel">
</div>
<div *ngIf="data.errors?.pattern || data.errors?.required" class="validation-msg col-xs-12">
{{securitySetting.currentSecuritySettings[data].validationErrorMessage}}
</div>
</li>
</div>
</ul>
</form>
我的控制器看起来像:
@Component({
selector: 'app-settingssecurity',
templateUrl: './settingssecurity.component.html',
styleUrls: ['./settingssecurity.component.css']
})
export class SettingssecurityComponent implements OnInit {
items = [
['validate_password_regexp_minlength', 'validate_password_regexp_minlower', 'validate_password_regexp_minupper', 'validate_password_regexp_minnumeric', 'validate_password_regexp_minspecial'],
['password_expiration', 'password_expiration_notification_enabled', 'password_expiration_notification'],
['distinct_password_history'],
['secret_answers_attempts', 'password_reset_expiration_delay', 'secret_questions_enabled'],
['login_tamper_mode_attempts', 'login_tamper_mode_attempts_delay', 'login_tamper_mode_attempts_reset_delay', 'login_block_attempts'],
['accunt_inactivity_block'],
['session_inactivity_logout']
];
securitySetting = {
isPCIDSS: true,
securitySettingsPCI: {},
securitySettingsCustom: {},
currentSecuritySettings: {},
munitPMSsections: {},
lockAccess: {}
};
...
}
当我运行此代码时,我的浏览器不会返回任何错误,我的表单如下所示:
但不幸的是,我的模式代码验证错误不起作用。
任何人都知道我可以在我的输入名称中添加什么 ref-data="ngModel" 或者我可能需要更改其他内容才能看到我的表单的验证错误?
如果我需要提供更多详细信息,请告诉我
【问题讨论】:
标签: angular angular-forms angular-validation angular-validator