Tengo problemas para formatear la fecha de cumpleaños en el formato 2021-04-13T00:00:00.000Z la fecha se envía correctamente, pero después de este formateo siempre tiene 1 día menos. ¿Alguien puede ayudar?
export function format(date): string { const mydate = new Date(date); return new Intl.DateTimeFormat().format(mydate); }El uso de los métodos de fecha básicos .getUTCYear() , .getUTCMonth() y .getUTCDay() le permitirá obtener la fecha tal como aparece en su cadena de origen relativa a UTC. Como se indica en un comentario, su fecha aparente cuando se representa en su zona horaria local es un día antes, como es correcto para las zonas horarias al oeste de UTC.
Todavía puede hacer uso de Intl.DateTimeFormat() si pasa una opción para usar UTC como zona horaria:
return new Intl.DateTimeFormat("pt-BR", { timeZone: "UTC" }).format(dateInput);Sin embargo, eso no es compatible con IE11 (si eso es importante para usted).