angular - 以编程方式设置 NgbDatePicker 的日期
问题描述
我的组件中有两个 NgbDatePicker:
input(
type="text",
ngbDatepicker,
#d="ngbDatepicker",
[readonly]="true",
formControlName='startDate',
(dateSelect)='setNewMinDate($event)',
)
input(
type="text",
ngbDatepicker,
#e="ngbDatepicker",
[readonly]="true"
formControlName='endDate'
)
和这个处理程序:
@ViewChild('e', {static: false}) endDateComponent: Query;
setNewMinDate(e: NgbDateStruct) {
const minDate: Moment = moment(e.year + '-' + e.month + '-' + e.day);
this.createAnnForm.value.endDate = minDate.toISOString();
this.endDateComponent.navigateTo(e);
}
表单模型适用于 ISO 日期。
发生的情况是日历弹出更改是新的日期,但输入字段不会自行更新。问题是什么?
解决方案
广告@Eliseo 建议,我需要使用 ReativeForm API
form.get('endDate').setValue(...)
更新输入字段
推荐阅读
- javascript - CheerioJS 从三个具有相同类名的 div 元素中选择一个
- javascript - 如何在Javascript中验证给定数字是否为整数?
- c# - 如何统一更改玩家位置?
- javascript - 使用 ElasticSearch 7.x 进行精确搜索
- gradle - 为 JAR 清单生成 Class-Path 属性
- apache-spark - 以独立模式在主节点上启动多个工作程序
- c# - Unity 编辑器模式 - 当子对象被添加/删除到脚本所在的对象时,如何让 OnHierarchyChange 重新绘制场景?
- java - Maven 原型生成不包括来自原型资源的文件
- google-bigquery - BigQuery:字符串到时间戳
- javascript - 是否可以在 JS 中的文件之间进行类通信?