如果用户选择大于今天日期的日期,如何使用角度反应形式验证日期

use*_*430 5 angular

如果用户选择的日期大于今天的日期,任何人都建议如何使用角度反应形式验证日期。我想显示错误消息。如果用户选择大于今天的日期

谢谢

小智 7

尽管当前不存在默认的 Angular 验证器,但您可以根据当前日期反应性地设置最小和最大日期的验证器。您需要创建一个自定义验证器..

import { FormControl, ValidationErrors } from '@angular/forms';

export class DateValidator {

   static LessThanToday(control: FormControl): ValidationErrors | null {
        let today : Date = new Date();

       if (new Date(control.value) > today)
           return { "LessThanToday": true };

       return null;
   }
}
Run Code Online (Sandbox Code Playgroud)

将 DateValidator 类导入到创建反应式表单的组件中,并应用上述验证器。(可能需要调整,我没有测试过..)