Búsqueda de sitios web

javascript - ion-datetime: ¿Cómo obtener el valor de la fecha sin sello de tiempo?


Estoy usando ion-datetime en Ionic 4 utilizando NgModel para enlazar a una propiedad, sin embargo, sin importar qué opciones incluya en format, siempre obtengo la hora con la marca de tiempo incluida. ¿Cómo puedo eliminar la marca de tiempo del resultado para que el valor final de mi propiedad sea algo como "2019-04-22" en lugar de "2019-04-22T08:45:41.243-05:00"?

Intenté: pero, todavía estoy obteniendo la marca de tiempo

 <ion-datetime max="2030" min="2019" [(ngModel)]="mydate" display-format="MMM DD, YYYY"></ion-datetime>

Espero que el resultado sea como: "2019-04-22", pero sigo obteniendo: "2019-04-22T08:45:41.243-05:00"

Respuesta #1

Si solo quieres la fecha, entonces creo que el método split() podría funcionar, porque el valor que obtenemos de ion-datetime es una cadena. Por lo tanto, usamos el método split que divide la cadena y la convierte en un arreglo, y puedes obtener la fecha o la hora que desees con la ayuda del índice de la siguiente manera:

     var dateFormat = mydate.split('T')[0]; 
     console.log(dateFormat);
     // 2019-04-22

Respuesta #2

Puedes formatear la fecha con Moment.js.

<ion-datetime displayFormat="MMM DD, YYYY" max="2030" min="2019" [(ngModel)]="mydate" (ionChange)="doSomething(this.mydate)"></ion-datetime>

import * as moment from 'moment';

doSomething(date) {
   console.log('date', moment(date).format('YYYY-MM-DD')); // 2019-04-22
}

Artículos relacionados