javascript - DateTimePicker 不显示值
问题描述
我正在使用角度日期选择器(https://www.npmjs.com/package/@danielmoncada/angular-datetime-picker)在组件中选择一系列日期,然后继续发送Instant[]
到我的 java 后端并存储它在我的数据库中。
但是,当我尝试从数据库加载数据并显示用户先前在 datepicker 组件中选择的范围时,它不会显示。
这是我的日期选择器的 html 代码
<div class="input-group form-control-lg" id="validity">
<input id="validity-date" [owlDateTimeTrigger]="dt13" [owlDateTime]="dt13"
placeholder ="Validity range of the survey"
[(ngModel)]="validityDate"
[selectMode]="'range'" class="form-control cursor-pointer"/>
<owl-date-time [pickerMode]="'dialog'" #dt13></owl-date-time>
</div>
这是我在 .ts 文件中所做的:
this.surveyOfferRepository.getById(this.companyId, this.surveyId).subscribe(surveyOffer => {
this.validityDate = surveyOffer.validityDate;
}
我确实Instant[]
从我的 java 后端得到了,它被视为Date[]
在我的 Angular 应用程序中,它只是没有显示在用户的前面,而且我在控制台中看不到任何错误。这是我调试打字稿时得到的结果:
我已经阅读了文档和许多示例,但是我找不到任何我想做的示例,这个组件不能提供我想要的吗?你对我做错了什么有任何想法吗?或者我应该如何进行?
解决方案
好吧,我设法通过添加表格和我想要的日期来“解决”这个问题,但是我认为这是一个“快速修复”,并没有真正回答为什么 ngModel 适用于单个日期而不适用于一个范围。
<form [formGroup]="formSurvey" class="container">
<input id="validity-date" [owlDateTimeTrigger]="dt1" [owlDateTime]="dt1"
placeholder ="Validity range of the survey"
formControlName="dates"
[selectMode]="'range'" class="form-control cursor-pointer"/>
<owl-date-time [pickerMode]="'dialog'" [showSecondsTimer]="false" #dt1></owl-date-time>
</form>
使用表单设置
private setUpForm() {
return new FormGroup({
dates: new FormControl('', Validators.compose([
Validators.required
])),
});
}
推荐阅读
- python - 从python中的列表创建不同的数据框
- mysql - 有什么方法可以从主机连接 docker mysql 吗?
- header - Access-Control-Allow-Origin Openstreetmap 问题
- ubuntu - 如何在 Ubuntu 中强制杀死进程?
- sql - 连接 Oracle 表时如何处理满足条件的多行
- amazon-web-services - AWS ECS Spring Boot 任务在后台工作中被杀死并重新启动
- javascript - 如何用嵌套字符串拆分字符串
- javascript - 在 vuejs 中将函数作为道具传递
- javascript - 如何在谷歌地图中自动设置信息窗口内容
- angular - 有时无法在 Angular 7 中查看 Angular Material mat-tab 墨水条?