Store Multiple Validators into a Constant in Angular 8 Reactive FormBuilders

匆匆过客 提交于 2019-12-25 01:46:46

问题


How do I store Multiple Validators into a Constant and use in Reactive FormBuilder? The following will apply 1 validator. Store and Use Regex Const Validator in Angular 8 Reactive Formbuilder

export const ZipValidation = Validators.pattern(/^\d{1,5}$/);

'ZipCode': [null, [Validators.maxLength(16), ZipValidation]],

We need to store a whole multiple array into a constant. This is multiple validators for latitude and longitude.

Validators.maxLength(32),
Validators.min(-90),
Validators.max(90),
Validators.pattern(/^\d*\.?\d*$/)

I tried doing the following, it is not working

export const LatitudeLongitudeValidator = [Validators.maxLength(32),Validators.min(-90),Validators.max(90),Validators.pattern(/^\d*\.?\d*$/)];

'latitude': [null, [LatitudeLongitudeValidator]],

回答1:


You can have array of all these validations and then using spread operator use that array inside validator,

export const CustomValidation = [
    Validators.maxLength(32),
    Validators.min(-90),
    Validators.max(90),
    Validators.pattern(/^\d*\.?\d*$/)
]

Use this array in formgroup,

'formField': ['', [ ...CustomValidation ]],

Spread operator is 3 periods dots ... just before array variable.



来源:https://stackoverflow.com/questions/59465475/store-multiple-validators-into-a-constant-in-angular-8-reactive-formbuilders

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!