我正在使用
我想要实现的目标
从firebase返回日期时间戳时,我将其转换回有效/可读日期
我的HTML输入字段(mdDatePicker)显示返回和转换的日期。
问题
错误错误:Datepicker:DateAdapter无法将值识别为日期对象
问题
HTML
<input mdInput [mdDatepicker]="picker" (focus)="picker.open()" formControlName="album_date" required />
<label class="vs__input__label"> Date </label>
<md-datepicker #picker></md-datepicker>
组件TS
var timestamp = albumToDisplay.album_date;
var albumDate = moment.unix(timestamp).format("MM/DD/YYYY");
this.albumDetails = this.formBuilder.group({
album_title: [albumToDisplay.album_title],
album_date: [albumDate]
});
非常感谢任何帮助。
更新
错误错误:Datepicker:值必须是DateAdapter识别的日期对象或ISO 8601字符串。取而代之的是:1504784461
知道怎么过这个吗?
答案 0 :(得分:0)
Moment的format
方法会返回一个字符串,因此不是您需要的字符串。似乎mdDatePicker
在内部转换了日期,因此您甚至不需要片刻才能使用此功能。所有你需要做的:
this.albumDetails = this.formBuilder.group({
album_title: [albumToDisplay.album_title],
album_date: [albumToDisplay.album_date]
});
答案 1 :(得分:0)
所以经过一番摆弄后,这个有用了:
var albumTimeStamp = albumToDisplay.album_date;
var albumDateFormatted = moment.unix(albumTimeStamp).format("MM/DD/YYYY");
var albumDateISO = moment(albumDateFormatted).toISOString();
&#13;