问题可能出现在你的组件初始化方法中。在使用日期选择器时,Angular会自动生成一个代表所选日期的Payload值,这通常作为表单的值返回。然而,如果你试图通过控制台日志打印该值,你可能会发现它与你所期望的值不同。
这是因为Angular在不同的上下文中生成不同的Payload值。在表单上下文中,Payload值将被格式化为字符串,并使用ISO 8601格式进行输出。但是在控制台上下文中,Payload值是一个JavaScript对象,并且可能包含其他属性。
为了获得正确的Payload值,请在你的组件类中使用FormControl来绑定DatePicker的值,然后在表单提交时,从FormControl中获取Payload值。这样可以确保表单始终包含正确的Payload值,并且不会在控制台输出中产生混淆。
下面是一个使用FormControl的示例代码,可以在Angular日期选择器中保存正确的Payload值:
import { Component } from '@angular/core';
import { FormControl } from '@angular/forms';
@Component({
selector: 'app-my-date-picker',
template: `
`
})
export class MyDatePickerComponent {
dateControl = new FormControl();
onSubmit() {
const payload = this.dateControl.value.toISOString();
console.log(payload);
}
}