Estou com um problema de conversão onde salvo no banco de dados no formato yyyy-MM-dd e apresento na tela no formato dd/MM/yyyy. Para converter o formato criei a seguinte função:
private formatarDataParaExibicao(data: string | Date): string {
const dataObj = typeof data === 'string' ? new Date(data) : data;
if (!(dataObj instanceof Date)) {
// Lidar com casos em que 'data' não é nem uma string nem um objeto Date
return '';
}
const dia = ('0' + dataObj.getDate()).slice(-2);
const mes = ('0' + (dataObj.getMonth() + 1)).slice(-2); // Ajuste para compensar o índice zero
const ano = dataObj.getFullYear();
return `${dia}/${mes}/${ano}`;
}
Até esta indo para o formato que desejo na tela dd/MM/yyyy, porém na apresentação esta me roubando um dia. Por exemplo esta salvo no banco de dados 2023-12-27 e com a conversão aparece na tela 26/12/2023.
Qual seria o problema do meu código?