A fortune-wheel in Vue.js that supports image backgrounds.
Vue3 + Typescript
Install the package:
npm install vue3-image-fortune-wheel --save
yarn add vue3-image-fortune-wheel
import { Wheel } from "vue3-image-fortune-wheel";
// If you using vite
import 'vue3-image-fortune-wheel/style'
// If you not
import 'vue3-image-fortune-wheel/dist/library.css'
export default {
components: {
Wheel,
},
};
<Wheel />
- Type:
Number
- Default:
null
This data corresponds to the id of your winning object. In my case an API returns me the id. If you are not in this case you can create a method that randomly chooses an id
Exemple of this method
randomGift() {
return Math.floor(Math.random() * this.data.lengh) + 1
}
- Type:
Number
- Default:
5000
How many millisecondes you want the wheel to turn
- Type:
Array
- Default:
[]
- id:
number
- value:
string
- color:
string
- bgColor:
string
data: [
{
id: 1,
value: "Gift 1",
color: '#7d7db3',
bgColor: '#ffffff'
},
{
id: 2,
value: "Gift 2",
color: '#ffffff',
bgColor: '#ffffff'
},
{
id: 3,
value: "Gift 3",
color: '#c92729',
bgColor: '#ffffff'
},
],
- Type:
Object
- Default:
{}
Possible to add an image in the center
{
src: string
width: number
height: number
}
- Type:
Object
- Default:
{}
Possible to add an image in the background
{
src: string
width: number
height: number
}