如何更改角度4中输入type =“ date”的输出日期格式?

Vig*_*raj 5 angular angular4-forms

实际上,我正在使用angular 4应用程序。我遇到的情况是,我必须以dd / mm / yyyy发送Date发送到服务器。

我正在使用属性作为输入类型=“ date”。但是此属性返回的值类似于yyyy / mm / dd。所以我该如何更改日期的输出格式。

Students.html

<input type="date" [(ngModel)]="Students.dob" name="Students.dob">
Run Code Online (Sandbox Code Playgroud)

选择日期后,当我用console.log()检查时。

Students.components.ts

checkDate() { console.log(Students.dob); }
Run Code Online (Sandbox Code Playgroud)

最终输出为yyyy / mm / dd。

有什么办法可以克服这个问题?请告诉我。

cod*_*der 6

您可以dd/mm/yyyy使用函数DatePipe内部将日期更改为格式checkDate()。像下面。并将该日期发送到服务器端。

首先将 导入DatePipe到您的组件中

import { DatePipe } from '@angular/common';
Run Code Online (Sandbox Code Playgroud)

然后像下面一样使用它

  checkDate() {
    const dateSendingToServer = new DatePipe('en-US').transform(this.Students.dob, 'dd/MM/yyyy')
    console.log(dateSendingToServer);
  }
Run Code Online (Sandbox Code Playgroud)

您可以在此处找到工作示例 STACKBLITZ DEMO

希望这对你有帮助!