繁体   English   中英

转换日期格式TypeScript

[英]Convert date format in TypeScript

我正在尝试根据年份和月份过滤表格。

我希望我的日期只有年份和月份,并且在进行搜索之前,我还希望我的文本框中有默认日期。

搜索时,我会将该值修补到一个文本框中,同时尝试将带有年份和月份的日期转换为 ISOString。

但是,在执行以下代码时,我正在为其接收 null object:

this.Date = new Date();
this.Date.setMonth(this.Date.getMonth() - 10);

//init
this.form.get('Date').patchValue(this.Date);

//passing to isostring for api call
this.Date= new Date(this.form.get('Date').value).toISOString();


result
TypeError: Cannot convert undefined or null to object

我究竟做错了什么?

代码中的一个问题可能是您试图在初始化之前将日期值修补到表单控件中。 patchValue 方法仅适用于现有的表单控件,不适用于 null 值。

要解决此问题,您可以在修补新值之前使用默认日期值初始化表单控件,如下所示:

this.Date = new Date();
this.Date.setMonth(this.Date.getMonth() - 10);

//init form control with default date value
this.form.get('Date').patchValue(this.Date);

//patch new value into form control
this.form.get('Date').patchValue(new Date());

//passing to isostring for API call
this.Date= new Date(this.form.get('Date').value).toISOString();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM