Угловой 7 + Пружинный ботинок 2 + MongoDB
Проблема смещения часового пояса при вводе даты:
Выберите дату в Angular HTML через весеннюю загрузку в MongoDB. При извлечении даты из MongoDB в HTML это не ожидаемый результат.
Пожалуйста, посмотрите процесс:
1,
customer.ts:
export class Customer {
id: String;
lastname: string;
firstname: string;
middleinitial: string;
dob: Date;
gender: string;
handdominance: string;
active: boolean;
}
2,
создание-customer.component.html
<input type="date" class="form-control" id="dob" required [(ngModel)]="customer.dob" name="dob">
- выберите дату: 06.11.2008 (местный часовой пояс MST)
та же HTML-страница:
<label>DOB: </label> {{customer.dob | date: 'medium' :'MST'}}
- результат отображения: DOB: 6,2018, 12:00:00 (ноябрь) (это правильно.)
3,
После отправки в create-customer.component.ts
save() {
console.log(this.customer);
this.customerService.createCustomer(this.customer)
.subscribe(
data => {
console.log(data);
this._customer = data as Customer;
},
error => console.log(error));
this.customer = new Customer();
}
- 1-й журнал: Клиент {dob: "2018-11-06"} (без информации о часовом поясе)
нет информации о часовом поясе в первом журнале.
- 2-й журнал: {id: "5be24991cb4b0123bc9c1a26", фамилия: ноль, имя: ноль, middleinitial: ноль, dob: "2018-11-06T00: 00: 00.000 + 0000",? ¡}
2-й результат журнала возвращается из БД. это время UTC. Ожидается "2018-11-06T07: 00: 00.000 + 0000"
4
CustomerController.java
System.out.println("Create Customer..." + customer.getDob());
результат отображения консоли: Create Customer ... Mon Nov 05 17:00:00 MST 2018 (это местное время (MST), но это не ожидаемый результат)
5,
MongoDB результат:
{
"_id" : ObjectId("5be25aa7cb4b0123bc9c1a29"),
"dob" : ISODate("2018-11-06T00:00:00Z"),
"active" : false,
"_class" : "com.example.demo.model.Customer"
}
Как мне сделать, чтобы получить правильный результат?
Спасибо.