Skip to content

ahnbj2000/react-rolling-item

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

react-rolling-item

example

<>
  <RollingItem
    on={this.state.start}
    column={3}
    backgroundImage={imageFile}
    backgroundSize="600px 564px"
    introItemInfo={{ x: -39, y: -28 }}
    itemInfo={
      [
        { x: -39, y: -217, id: 'item_1', probability: 0 },
        { x: -39, y: -406, id: 'item_2', probability: 0 },
        { x: -241, y: -28, id: 'item_3', probability: 0 },
        { x: -241, y: -217, id: 'item_4', probability: 0 },
        { x: -241, y: -406, id: 'item_5', probability: 0 },
        { x: -437, y: -28, id: 'item_6', probability: 0 },
        { x: -437, y: -217, id: 'item_7', probability: 0 },
        { x: -437, y: -406, id: 'item_8', probability: 0 },
      ]
    }
    width={177}
    height={181}
    startDelay={1000}
    fixedIds={[3, 4, 7]}
    reset={this.state.reset}
    completionAnimation={true}
    onProgress={(isProgress, result) => { console.log(result); }}
  />
  <button className="start_btn" onClick={this.onClick}>{!this.state.start ? 'START' : 'STOP'}</button>
  <button className="reset_btn" onClick={this.onClickReset}>RESET</button>
</>

Props

props type descripton
on boolean roll start status
column number number of columns to roll
backgroundImage string
backgroundSize string
itemInfo {id?: any, x: number, y: number, probability?: number}
introItemInfo {x: number, y: number} intro screen before rolling
width number width of one item
height number height of one item
fixedIds number[] or string[] You can define the id that will be won in advance
startDelay number post-start delay
reset boolean random initialization of all items
completionAnimation boolean whether you want to do an animation when the item stops (IE9 is not supported)
rootClassName string You can set className to set a custom style on the root node
onProgress (progress: boolean, result?: any[]) => void A callback function of the rolling animation process

supported browsers

  • IE9+, Chrome, Safari, Firefox, Whale, Mobile Safari, Mobile Chrome...

Features

  • Create a roller by the number you set.
  • Setting items using sprite image.
  • Return items as a result of matching.
  • Probability can be set.
  • Added delay option before rolling start.
  • Intro screen can be set.
  • reset option.