更新时间:2020-12-24 09:23:29
方式 1:通过 script 标签引入
为了避免 CDN 链接出现异常或波动,我非常建议你缓存到本地或服务器
最新版本:
1 |
指定版本:
1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | < div id = "my-lucky" ></ div > < script > // 大转盘抽奖 let luckyWheel = new LuckyCanvas.LuckyWheel({ el: '#my-lucky', width: '300px', height: '300px', }, { // ...你的配置 }) // 九宫格抽奖 let luckyGrid = new LuckyCanvas.LuckyGrid({ el: '#my-lucky', width: '300px', height: '300px', }, { // ...你的配置 }) </ script > |
方式 1:通过 import 引入
首先安装插件
1 2 3 4 | # npm 安装: npm install vue-luck-draw # yarn 安装: yarn add vue-luck-draw |
然后找到 main.js 引入插件并 use
1 2 3 4 5 6 | // vue2.x import LuckDraw from 'vue-luck-draw' Vue.use(LuckDraw) // vue3.x import LuckDraw from 'vue-luck-draw/vue3' createApp(App).use(LuckDraw).mount('#app') |
最后在组件内使用 <LuckyWheel />大转盘组件 或 <LuckyGrid />九宫格组件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | < template > < div > <!-- 大转盘抽奖 --> < LuckyWheel width = "300px" height = "300px" ...你的配置 /> <!-- 九宫格抽奖 --> < LuckyGrid width = "300px" height = "300px" ...你的配置 /> </ div > </ template > |
#方式 2:通过 script 标签引入
为了避免 CDN 链接出现异常或波动,我非常建议你缓存到本地或服务器
vue2.x:
vue3.x:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
当前 uni-app 中各端适配情况
H5端 编译正常
app端 待测试
微信小程序 编译正常
其他小程序 待测试
#方式 1:通过 import 引入
#1. 安装插件
你可以选择通过 HBuilderX 导入插件:
1 |
也可以选择通过 npm / yarn 安装
1 2 3 4 | # npm 安装: npm install uni-luck-draw # yarn 安装: yarn add uni-luck-draw |
#2. 引入并使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | < template > < view > <!-- 大转盘抽奖 --> < LuckyWheel width = "600rpx" height = "600rpx" ...你的配置 /> <!-- 九宫格抽奖 --> < LuckyGrid width = "600rpx" height = "600rpx" ...你的配置 /> </ view > </ template > < script > // npm 下载会默认到 node_modules 里面,直接引入包名即可 import LuckyWheel from 'uni-luck-draw/lucky-wheel' // 大转盘 import LuckyGrid from 'uni-luck-draw/lucky-grid' // 九宫格 // 如果你是通过 HBuilderX 导入插件,那你需要指定一下路径 // import LuckyWheel from '@/components/uni-luck-draw/lucky-wheel' // 大转盘 // import LuckyGrid from '@/components/uni-luck-draw/lucky-grid' // 九宫格 export default { // 注册组件 components: { LuckyWheel, LuckyGrid }, } </ script > |
#3. 我这里提供了一个最基本的 demo 供你用于尝试
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | < template > < view > < LuckyWheel ref = "luckyWheel" width = "600rpx" height = "600rpx" :blocks = "blocks" :prizes = "prizes" :buttons = "buttons" :defaultStyle = "defaultStyle" @ start = "startCallBack" @ end = "endCallBack" /> </ view > </ template > < script > import LuckyWheel from 'uni-luck-draw/lucky-wheel' export default { components: { LuckyWheel }, data () { return { blocks: [ { padding: '13px', background: '#d64737' } ], prizes: [ { title: '1元红包', background: '#f9e3bb', fonts: [{ text: '1元红包', top: '18%' }] }, { title: '100元红包', background: '#f8d384', fonts: [{ text: '100元红包', top: '18%' }] }, { title: '0.5元红包', background: '#f9e3bb', fonts: [{ text: '0.5元红包', top: '18%' }] }, { title: '2元红包', background: '#f8d384', fonts: [{ text: '2元红包', top: '18%' }] }, { title: '10元红包', background: '#f9e3bb', fonts: [{ text: '10元红包', top: '18%' }] }, { title: '50元红包', background: '#f8d384', fonts: [{ text: '50元红包', top: '18%' }] }, ], buttons: [ { radius: '50px', background: '#d64737' }, { radius: '45px', background: '#fff' }, { radius: '41px', background: '#f6c66f', pointer: true }, { radius: '35px', background: '#ffdea0', fonts: [{ text: '开始\n抽奖', fontSize: '18px', top: -18 }] } ], defaultStyle: { fontColor: '#d64737', fontSize: '14px' }, } }, methods: { // 点击抽奖按钮触发回调 startCallBack () { // 先开始旋转 this.$refs.luckyWheel.play() // 使用定时器来模拟请求接口 setTimeout(() => { // 3s后得到中奖索引 let index = Math.random() * 6 >> 0 // 缓慢停止游戏 this.$refs.luckyWheel.stop(index) }, 3000) }, // 抽奖结束触发回调 endCallBack (prize) { // 奖品详情 console.log(prize) } } } </ script > |
特别申明:
本站所有资源都是由网友投稿发布,或转载各大下载站,请自行检测软件的完整性!
本站所有资源仅供学习与参考,请勿用于商业用途,否则产生的一切后果将由您自己承担!
如有侵权请联系我们删除下架,联系方式:lei1294551502@163.com