首页 > 解决方案 > 将填充有字符串的模型解析为另一个填充有日期的模型

问题描述

我从我的后端得到一个带有日期字符串的对象列表。我想将这些字符串解析为日期。

来自后端的数据如下所示:

      [{
        Date: '9/19/2018 12:00:00 AM',
        id: 1,
      },
      {
        Date: '9/19/2018 12:00:00 AM',
        id: 2,
      },
      ];

我想将这个响应解析为这样的模型:

export class Order {
  Date: Date;
  id: number;
}

我认为应该是这样的:

getOrders(user = this.user.id): Observable<Order[]> {
 return this.http.post<Order[]>(this.api_url + 'Orders/GetOrders', user)
   .pipe(
     map(
       orders => {
         this.order = orders
           .pipe(map(
            x => x.date = new Date(x.date);
            ));
         return orders;
       }
     )
   );}

你能告诉我我做错了什么吗?或者没有日期解析的不同方式。

我的问题是我在本地的日期格式与服务器上的不同,我想以某种方式统一它以便在所有国家/地区都能很好地工作。当我使用日期管道时,它会在表中抛出无效日期(我的 PC 本地的日期格式是 dd/MM/yyyy,而在服务器上我有相同的,所以我不知道如何修复它。

标签: angulardatedatetimemodelangular7

解决方案


您要映射的属性是 x.Date 而不是 x.date。它应该以大写字母开头。


推荐阅读