1.1.0 • Published 6 years ago

digit-roll-react v1.1.0

Weekly downloads
174
License
ISC
Repository
github
Last release
6 years ago

digit-roll-react

Rolling digit/odometer effect by React

DEMO: codesandbox

1. How to use

# install dependencies
npm install digit-roll-react
import React, { Component } from 'react'
import DigitRoll from 'digit-roll-react'

class App extends Component {
  state = { num: 12345678 }

  //generate random numbers
  refresh = () => {
    this.setState({
      num: Math.floor(Math.random() * 100000000),
    })
  }

  componentDidMount() {
    setInterval(this.refresh, 2500)
  }

  render() {
    return <DigitRoll num={this.state.num} length={9} divider="," />
  }
}

export default App

2. Prop Types

PropertyTypeRequired?defaultDescription
numNumber'000000'the number you want to render
lengthNumberautolength={9} then 123456 => 000123456
heightNumber3 (rem)Height of each digit
widthNumber2 (rem)width of each digit
dividerStringno dividerdivider=',' then 100000 => 100,000
delayNumber2 (s)how fast digit rolls
classNameString''Optional custom CSS class name to attach to root element

3. Style it

Access the full power of CSS to customize the component to your liking.

classNamedescription
.DigitRollthe root <div>.
.DigitRoll__Cell<div> of each digit
.DigitRoll__Divider<div> of dividing element
/* index.css */
.DigitRoll {
  font-size: 25px;
  color: white;
  border: none;
}

.DigitRoll__Cell {
  background: salmon;
  margin: 0 3px;
  border: 1px solid brown;
}

.DigitRoll__Divider {
  font-size: 25px;
  color: black;
  padding: 0 6px;
}

Then import it after the default css file.

import 'digit-roll-react/css/default.css'
import './index.css'