首页 > 解决方案 > Angular - ng-pick-datetime:如何以反应形式初始化输入值

问题描述

我正在使用流行的日期时间选择器(https://www.npmjs.com/package/ng-pick-datetime)构建一个表单。我试图初始化 DateTime 输入的值,但到目前为止没有运气(事件默认值未在表单中设置)

详情请参考我的示例代码 https://stackblitz.com/edit/ng-pick-datetime-format-i18n-bh5lqi?devtoolsheight=33&file=src/app/app.component.ts

任何建议都非常感谢。

标签: angulartypescriptdatepickerangular-reactive-forms

解决方案


归功于@MikeOne 的评论,我已经验证您需要使用Date对象或Moment对象设置日期。

方法1:(日期字符串到日期)

this.itineraryrForm.setValue({
  arrivalTime: new Date("01/01/2021 23:00")
});

或方法 2:(日期字符串到 Moment 具有指定的日期字符串格式)

this.itineraryrForm.setValue({
  arrivalTime: moment("01/01/2021 23:00", "DD/MM/YYYY HH:mm")
});

StackBlitz 上的解决方案

注意[(ngModel)]:如果您使用绑定,建议您删除绑定,[formControl]因为它在 Angular v6 中已被弃用


推荐阅读