Chronometer
El componente Chronometer muestra una cuenta regresiva en base al tiempo dado en segundos, actualizándose cada segundo. Permite personalizar el formato del tiempo mostrado y ejecutar una acción cada vez que el tiempo cambia.
Ejemplo
Importación
Para importar el componente Chronometer, se puede hacer desde fenextjs
import { Chronometer } from "fenextjs";
Parámetros
Parámetro | Tipo | Requerido | Default | Descripcion |
---|---|---|---|---|
time | number | no | 100 | El tiempo inicial en segundos que se mostrará y del cual el cronómetro comenzará la cuenta regresiva. |
onChange | (time: number) => void | no | undefined | Función que se ejecuta cada vez que el tiempo cambia, recibiendo el nuevo tiempo como parámetro. |
min | number | no | 0 | El tiempo mínimo al que puede llegar el cronómetro, en segundos. |
optionsTimeToText | getTimeToTextProps | no | {days: false, hours: true,minutes: true,seconds: true } | Opciones para personalizar el formato del tiempo mostrado, como si incluir o no los días. |
className | string | no | '' | Clase CSS personalizada para el componente. |
Storybook
Para ver el storybook del componente lo puede hacer con este link (opens in a new tab)
Usos
- Cronómetro básico
<Chronometer time={120} />
- Cronómetro con acción al cambiar el tiempo
<Chronometer
time={60}
onChange={(newTime) => console.log("Nuevo tiempo:", newTime)}
/>
- Cronómetro con formato de tiempo personalizado
<Chronometer
time={3600}
optionsTimeToText={{ hours: true, minutes: true, seconds: true }}
/>