2.1.3 • Published 1 year ago

@fidme/react-native-wheel-of-fortune v2.1.3

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

react-native-wheel-of-fortune

Forked from suusofttruongnv/react-native-wheel-of-fortune We did some modifications to fit our needs.

Wheel of fortune component for React Native

React Native Wheel Of Fortune

Installation

Use the package manager npm and yarn to install react-native-wheel-of-fortune.

yarn add @fidme/react-native-wheel-of-fortune
# or using npm
npm i @fidme/react-native-wheel-of-fortune --save

Dependencies

WheelofFortune is dependent on react-native-svg and D3-shape plugins.

Import

import WheelOfFortune from "@fidme/react-native-wheel-of-fortune";

Properties

PropertyTypeDefaultDesc
rewards (required)Array-Set Rewards
winnerNumberrandom Set winner index
colorsArray Default ColorsSegment background colors
duration (ms)Number10000Completion time (ms)
getWinner (required) callback(value,index) -Winner value and index callback function
backgroundColorString#FFFFFF Wheel background color
borderWidthNumber2Wheel border width
borderColor String #FFFFFFWheel border color
textColorString #FFFFFFRewards text color
knobSizeNumber20Knoob size
knoobSourcePathknoob.png  Knoob source
playButton render()exampleRender method for tap to play button
innerRadiusNumber100Set inner radius size
innerRadiusNumber100Set inner radius size
textAngleStringhorizontalSet angle of reward text
typeRewards[String]requireSet type rewards
sizeIconRewardNumber30Icon reward size
iconRewards[Path]knoob.png  Icon reward source

Usage

const participants = [
  '%10',
  '%20',
  '%30',
  '%40',
  '%50',
  '%60',
  '%70',
  '%90',
  'FREE',
];

const typeRewards = [
  'Point',
  'Gold',
  'Cash',
  'Point',
  'Gold',
  'Cash',
  'Point',
  'Gold',
  'FREE',
];
const wheelOptions = {
      rewards: participants,
      knobSize: 50,
      borderWidth: 5,
      borderColor: '#000',
      innerRadius: 50,
      duration: 4000,
      backgroundColor: 'transparent',
      textAngle: 'horizontal',
      knobSource: require('./assets/images/knoob.png'),
      typeRewards: typeRewards,
      sizeIconReward: 40,
      iconRewards: iconRewards,
      getWinner: (value, index) => {
        this.setState({winnerValue: value, winnerIndex: index});
      },
      onRef: ref => (this.child = ref),
    };
<WheelOfFortune
    options={wheelOptions}
/>
<Button title="Press me" onPress={ () => { this.child._onPress() } } />

For more information and test go to /Example folder.

Contributors

Joaquin Beceiro

License

MIT