vue 版的老虎机抽奖活动效果折腾小记

. 前沿


最近公司有一个活动,让做一个老虎机抽奖活动,对于之前没有做过的我来说还是有些吃力的,于是就开始各种网上找插件,发现大部分都是jquery的,要不就是好多一部分的,一个完整的流程都走不下来,更有甚者让花钱买他的代码,我就想说大家都是分享,互相交流,你们怎么就那么自私,所以今天把我折腾的老虎机分享出来,以来方便自己以后开发,而来大家也可以发现不足,指出来共同进步。


. 该项目需要雪碧图哦
. 来先看看效果图

WechatIMG10.png

. 代码里边都有注释,比较容易上手。我用的是曲线救国的方法,就是说并不完美,不太灵活,雪碧图的位置一旦确定,就尽量不要动了,不然下次还需要在重新调雪碧图的y轴的位置,这个很烦,希望看见的小伙伴给个建议。

. 作者最近一段时间比较忙,还未将该效果抽出公共组件,后期有机会抽成公共组件,就好了。会省好多事。

. 好了不说废话了,上思路,代码。

思路逻辑:老虎机抽奖结果以后台告知为准,所以前台需要根据后台返回的是否抽中标示来展示相应的效果

其实我刚开始认为抽奖结果是前端做的,然后越陷越深,发现不好做出来,而且安全性不高,然后跟小伙伴交流才知道一般抽奖类的活动抽奖结果都是由后台告知,这下就轻松多了,因为你只需要根据结果展示相应的效果就好了。

. 主要运用的技术

老虎机抽奖活动运用到了css3的transition和css3的过渡来实现平滑滚动的效果,通过改变背景雪碧图的y轴位置backgroundPositionY来展示不同的奖品,以达到抽奖效果。js通过定时器可以达到转动效果
#第一步,布局

<template>
    <div id="slotMachine">
        <div class="PosRela priceCenter HomeBGColor Width100">
            <img class="Width100 Height100" src="../img/2@2x.png">
            <!-- 老虎机抽奖框 -->
            <div class="PosAbso trigerCenter">
                <transition name="down-up-translate-fade">
                    <div class="SpriteChart" :style="{backgroundPositionY: priceOne + 'rem'}"></div>
                </transition>
                <transition name="down-up-translate-fade">
                    <div class="SpriteChart" :style="{backgroundPositionY: priceTwo + 'rem'}"></div>
                </transition>
                <transition name="down-up-translate-fade">
                    <div class="SpriteChart" :style="{backgroundPositionY: priceThr + 'rem'}"></div>
                </transition>
            </div>
        </div>
        <!-- 前往抽奖区参与活动赢好礼! -->
        <!-- DrawToast 是封装的公共弹窗组件 -->
        <DrawToast v-show='isGoToPrice' @fromChild="GoToPrice">
            <div class="PosRela GoToPrice" slot="luckyDrawCenter">
                <img class="Width100 Height100" src="../img/弹窗@2x (1).png">
                <div class="PosAbso Width100 Font17 FontWeight GoToPriceText">前往抽奖区参与活动赢好礼!</div>
            </div>
        </DrawToast>
        <!-- 获得福利券弹窗 -->
        <DrawToast v-show='isGetWelfare' @fromChild="GetWelfare">
            <div class="PosRela GetWelfare" slot="luckyDrawCenter">
                <img class="Width100 Height100" src="../img/弹窗-点击抽奖@2x.png">
                <div class="PosAbso Width100 Font20 FontWeight constrGet">恭喜您获得</div>
                <div class="PosAbso Width100  getVoucher">
                    <div class="getVoucherName Font24 FontWeight Ellipsis"
Vue活动现场巨幕抽奖系统是一种使用Vue框架开发的用于现场活动中进行抽奖的系统。该系统主要包括两个部分,一个是巨幕显示屏,用于展示中奖信息,另一个是后台管理系统,用于设置奖品和抽奖规则。 首先,巨幕显示屏是系统的核心组件之一。它通常会被放置在活动现场的显眼位置,比如舞台后方或现场中央。巨幕显示屏可以实时地展示中奖人员的信息,包括中奖的奖项、获奖者的姓名等。利用Vue框架的响应式设计,在后台设置奖项和中奖人员后,巨幕显示屏可以即时刷新显示最新的抽奖结果。 而后台管理系统是用于设置奖品和抽奖规则的控制台。在后台管理系统中,管理员可以添加、编辑和删除奖项,包括设置奖品名称、奖品数量、中奖概率等。同时,管理员也可以根据具体的活动需求设置抽奖规则,如限定抽奖的时间段、抽奖人员的范围等。这些设置都可以通过Vue框架实现动态更新,并与巨幕显示屏实时同步。 该系统的优势在于使用了Vue框架,具有高效、灵活、响应式等特点。从开发者的角度来看,Vue提供了简洁明了的代码模板和组件化的开发模式,使得开发过程更加高效。而使用者则可以通过巨幕显示屏清楚地看到抽奖结果,提高活动的参与度和趣味性。 总结而言,Vue活动现场巨幕抽奖系统是一套通过Vue框架实现的现场抽奖解决方案。它包括巨幕显示屏和后台管理系统两个部分,通过灵活的设置和实时的响应,实现了方便、高效、有趣的活动抽奖体验。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值