Angular 角度/火基-从时间戳中提取日期和时间

Angular 角度/火基-从时间戳中提取日期和时间,angular,google-cloud-firestore,angular-material,Angular,Google Cloud Firestore,Angular Material,我有一个角度表单,其中有一个日期输入(使用角度材质日期选择器)和一个时间选择器(使用)。当我创建一个新项目时,日期会预先填充Firestore时间戳。在我的编辑表单中,日期和时间都引用同一字段。两者似乎都读对了 如果我更改了时间,则字段的时间方面将更新,而日期将保持不变。那很好。但是,每当我更改日期时,它都会覆盖日期和时间方面。查看表单的“保存”按钮(将更新日期),我有以下信息: let formValue = { ...this.form.value }; for (let prop in f

我有一个角度表单,其中有一个日期输入(使用角度材质日期选择器)和一个时间选择器(使用)。当我创建一个新项目时,日期会预先填充Firestore时间戳。在我的编辑表单中,日期和时间都引用同一字段。两者似乎都读对了

如果我更改了时间,则字段的时间方面将更新,而日期将保持不变。那很好。但是,每当我更改日期时,它都会覆盖日期和时间方面。查看表单的“保存”按钮(将更新日期),我有以下信息:

let formValue = { ...this.form.value };
for (let prop in formValue) {
  if (!formValue[prop] && formValue[prop] != 0) {
    delete formValue[prop];
  }
}

this.doc.update(formValue)
我想实现的目标

  • 角度材质时间选择器更新时间时,它仅更新现有时间戳的时间(当前有效!)
  • 角度材质日期选择器更新日期时,它只更新日期,不更新时间。(现在,更改日期会将该值重置为UTC凌晨12:00:00时2021年1月20日<代码>)