angular - 即使未选择任何值,如何在表单中标记 ngbDatepicker 有效

标签 angular ng-bootstrap ngb-datepicker

我在 Angular2 项目的 Reactive Form 中使用 ng-bootstrap 的 ngbDatepicker,日期是可选的,但是 ngbDatepicker 总是将表单标记为无效,除非选择了日期。

有没有办法从表单验证中排除 ngbDatepicker,或者对其进行配置,使其无论是否设置了值都返回 Valid?

最佳答案

问题在于我如何初始化表单值。我将默认值设置为空字符串,而我本应将日期初始化为 null。所以我这样做了:

  replicantForm = this.fb.group({
      name: ['', Validators.required],
      incepdate: '',
      longevity: ''
  })

当我应该这样做的时候:

  replicantForm = this.fb.group({
      name: ['', Validators.required],
      incepdate: null,
      longevity: ''
  })

非常感谢@pkozlowski-opensource 的澄清。

关于angular - 即使未选择任何值,如何在表单中标记 ngbDatepicker 有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43828287/

相关文章:

angular - 使用 Jasmine 和 karma 为 Angular2 运行 "npm test"时出现 404 错误

css - 使用组件作为内容自定义 ng-bootstrap 模态

javascript - 为什么 radio 组的 [(ngModel)] 不绑定(bind)?

typescript - 如何在 ngbdatepicker 中更改 datepicker 日期格式,如 dd/mm/yyyy

angular - 如何在angular bootstrap的ngbDatepicker输入字段中更改日期格式?

angular - 如何从星期日而不是星期一在 ng bootstrap Datepicker 中开始日历周?

angular - Mat-tree 创建一棵树,其中包含要显示的值和 id

javascript - 如何将参数初始化为0

Angular 2 promise/observable 链两个事件?

angularjs - 在模型驱动表单(响应式(Reactive))中将值设置为 ngtypeahead