0.1.2 • Published 2 years ago
@bipboys/react-countdown v0.1.2
Installation
This module is distributed via github npm registry (GitHub Packages) which is bundled with node and
should be installed as one of your project's dependencies
. See more about work with Github Packages and installing a package:
- Authenticate to GitHub Packages using the instructions for your package client
- Install the package using the instructions for your package client.
npm install @bipboys/countdown
Usage
It couldn't be easier!
- Сustom render
import {Countdown} from '@bipboys/react-countdown
let dt = new Date();
dt.setMilliseconds(dt.getMilliseconds() + 10000);
<Countdown
overtime
zeroPadTime={2}
onStart={(timeD) => {
console.log('onStart: ', timeD);
}}
onPause={(timeD) => {
console.log('onPause: ', timeD);
}}
onComplete={(timeD) => {
console.log('onComplete: ', timeD);
}}
onStop={(timeD) => {
console.log('onStop: ', timeD);
}}
intervalDelay={1000}
date={dt}
renderer={(renderProps) => {
const {days, hours, minutes, seconds} = renderProps.formatted;
return (
<>
<span>
{renderProps.total < 0 ? '-' : ''}
{days}
{days ? ':' : ''}
{hours}:{minutes}:{seconds}
</span>
<button
onClick={() => {
renderProps.api.start();
}}
>
{'START'}
</button>
<button
onClick={() => {
renderProps.api.pause();
}}
>
{'PAUSE'}
</button>
<button
onClick={() => {
renderProps.api.stop();
}}
>
{'STOP'}
</button>
</>
);
}}
/>
- Default render
<Countdown date={'June 10, 2021 21:12:12'} />
Props
prop | type | default | description |
---|---|---|---|
date | Date/number/string | start timer | |
intervalDelay | number | 1000 | interval delay for timer tick |
precision | number | 0 | precision on a millisecond basis |
autostart | boolean | true | auto start |
overtime | boolean | run timer after time expires | |
className | string | add class | |
daysInHours | boolean | false | days are calculated as hours |
zeroPadTime | number | 2 | length of zero-padded output, e.g.: 00:01:02 |
zeroPadDays | number | length of zero-padded days output, e.g.: 01 | |
onMount | CountdownTimeDeltaFn | callback | |
onStart | CountdownTimeDeltaFn | callback | |
onPause | CountdownTimeDeltaFn | callback | |
onReset | CountdownTimeDeltaFn | callback | |
onTick | CountdownTimeDeltaFn | callback | |
onComplete | CountdownTimeDeltaFn | callback | |
renderer | CountdownRendererFn | custom render (api, props, time) |
STATUSES
STARTED (counter is running) PAUSED STOPPED (default status and after reset) COMPLETED
API
name | description |
---|---|
start | start - status STARTED |
pause | pause - status PAUSED |
reset | reset - status STOPPED |
isStarted | check status |
isPaused | - |
isStopped | - |
isCompleted | - |