Hospedagem de Sites - Hostcel
Hospedagem de Sites SSD / NVMe - Hostcel

Trabalho com React Native e PHP, e enquanto trabalhava no Aplicativo para Provedor de Internet, me deparei com a necessidade de converter timestamp em data no React Native.

Portanto, comecei a investigar soluções.

Por padrão, o JavaScript fornece o objeto Date, que é perfeito. Isso significa que não há necessidade de carregar uma biblioteca de terceiros.

No entanto, quando tentei usar esse objeto no meu site React Native, recebi a seguinte mensagem de erro: “Objetos não são válidos como um filho do React”.

Aqui está um trecho de código que usei:

{new Date(postTimestamp)}

Solução

Como a saída de renderização pode conter apenas elementos React, strings e números, tive que converter meu objeto Date em uma string para resolver o problema.

Aqui está um exemplo de um trecho de código funcional:

{new Date(postTimestamp * 1000).toDateString()}

Observe que também multipliquei o timestamp por 1000 para converter o valor de segundos para milissegundos, porque o JavaScript usa milissegundos internamente, enquanto os carimbos de tempo UNIX normais geralmente estão em segundos.

Também é possível usar o método toLocaleString() para formatar melhor a sua data. Aqui está outro exemplo de uso do objeto Date, mas com toLocaleString():

const savedTime    = '2021-12-23T19:34:00.000Z';
const formatedDate = new Date(savedTime).toLocaleString(
  "en-US",
    {
      month: "short",
      day: "2-digit",
      year: "numeric",
    }
);

console.log(formatedDate); // Dec 29, 2021

Espero que esta dica sobre como exibir datas a partir de timestamps tenha sido útil.


Certifique-se de revisar o artigo para garantir que ele se ajuste ao código.

1