Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

102
Vistas
Actualización a v2 date-fns: NaN

Estoy actualizando el módulo date-fns de v1 a v2.

Este método auxiliar solía funcionar:

 const { format, parseISO, differenceInSeconds } = require("date-fns"); const newDateNow = () => { const date = new Date(); return format(date, process.env.DATE_FORMAT); }; // `process.env.DATE_FORMAT` is set to `yyyy-MM-dd HH:mm:ss` console.log(ff) //prints: Thu Jul 21 2022 14:44:56 GMT+0200 (Central European Summer Time) console.log(gg) //prints: 3600 console.log(newDateNow()) //prints: 2022-07-21 15:32:05 const isExpired = () => { const exp = differenceInSeconds(newDateNow(), ff); return parseInt(gg) > exp; }

Después de la actualización a la v2 del módulo, esto genera el error: date-fns doesn't accept strings as date arguments. Please use 'parseISO' to parse strings. Esto apunta a la línea const exp .

Así que cambio esa línea a:

 const exp = differenceInSeconds(newDateNow(), parseISO(ff));

Esto todavía genera el mismo error, así que lo cambio a:

 const exp = differenceInSeconds(parseISO(newDateNow()), parseISO(ff));

Ahora no hay ningún error, pero console.log(exp) imprime NaN .

¿Cómo debo implementar esto? ¿No debería cambiar el método newDateNow para que no sea necesario usar parseISO() en newDateNow() ?

about 4 years ago · Santiago Gelvez
1 Respuestas
Responde la pregunta

0

differenceInSeconds() es una función que toma dos objetos Date como argumentos. En su código, newDateNow() devuelve una cadena porque está llamando a format() en la fecha, por lo que le está pasando una cadena en lugar de una fecha.

Entonces, en función de la simple necesidad de comparar las dos fechas, debe omitir esa llamada a format() por completo.

Su ejemplo de código no incluye la asignación de ff , deberá asegurarse de que sea una fecha y no una cadena también.

Si aún no lo ha visto, la documentación es útil: https://date-fns.org/v2.28.0/docs/Getting-Started

about 4 years ago · Santiago Gelvez Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda