В приложении Angular 7 у меня есть следующая модель:
public getTopPosts() {
return this.httpClient.get<TopPostsResponse>>('top-posts');
}
Где TopPostsResponse:
export interface TopPostsResponse {
id: number;
title: string;
created: Date;
}
Я вызываю службу в методе компонента:
getTopPosts(): Observable<PostModel[]> {
return this.postService.getTopPosts().pipe(
map((response: TopPostsResponse) => {
console.log(response.created);
console.log(response.created instanceof Date);
var created = new Date(response.created);
console.log(created);
console.log(created instanceof Date);
return {
id: response.id,
created: response.created,
title: response.title
};
}));
}
Проблема в том, что когда я проверяю, является ли response.created датой, которую я получаю False:
console.log(response.created); >> 2019-01-24T13:03:10.123684
console.log(response.created instanceof Date); >> FALSE
var created = new Date(response.created);
console.log(created); >> Thu Jan 24 2019 13:03:10 GMT+0000 (WET)
console.log(created instanceof Date); >> TRUE
Кажется, служба не преобразует значение, возвращаемое API, в тип Date, но все ещеявляется действительной датой, потому что я могу создать ее экземпляр.
Что мне не хватает?