362 lines
7.0 KiB
Vue
362 lines
7.0 KiB
Vue
<template>
|
||
<view>
|
||
<turnLottery v-if="type==1"
|
||
:themeColor="themeColor"
|
||
:btn_Color="btn_Color"
|
||
:seled_Color="seled_Color"
|
||
:seled_t_Color="seled_t_Color"
|
||
:un_seled_Color="un_seled_Color"
|
||
:un_seled_t_Color="un_seled_t_Color"
|
||
:show_again="show_again"
|
||
:again_txt="again_txt"
|
||
:result_txt="result_txt"
|
||
:tips_init="tips_init"
|
||
:no_z_init="no_z_init"
|
||
@show="show"
|
||
@again="again"
|
||
:seled_img="seled_img"
|
||
:un_seled_img="un_seled_img"></turnLottery>
|
||
|
||
|
||
<marquee v-if="type==2" :list="list" :themeColor="themeColor" :bgColor="bgColor" :bg_sd_Color="bg_sd_Color" @result="result" @toDetailPage="toDetailPage"
|
||
:theme_img_bg="theme_img_bg"
|
||
:is_img_bg="is_img_bg"
|
||
:box_shadow_Color="box_shadow_Color"
|
||
:bg_img="bg_img"
|
||
:stay_index="stay_index"
|
||
:availableSurplusNum="availableSurplusNum"
|
||
@Recharge="Recharge"
|
||
></marquee>
|
||
|
||
<turnplate v-if="type==3" :list="list" :chance_num_init="chance_num_init" :height="height" :width="width" @result="result" @toDetailPage="toDetailPage" :stay_index="stay_index"></turnplate>
|
||
|
||
<blow v-if="type==4"
|
||
ref="blowRef"
|
||
:canvasId="canvasId"
|
||
:height="height"
|
||
:width="width"
|
||
:percentage="percentage"
|
||
:touchSize="touchSize"
|
||
:fillColor="fillColor"
|
||
:watermark="watermark"
|
||
:watermarkColor="watermarkColor"
|
||
:watermarkSize="watermarkSize"
|
||
:title="title"
|
||
:titleColor="titleColor"
|
||
:titleSize="titleSize"
|
||
:disabled="disabled"
|
||
|
||
:is_show="is_show"
|
||
:result_img="result_img"
|
||
:result_txt="result_txt"
|
||
:txtFontSize="txtFontSize"
|
||
:txtColor="txtColor"
|
||
:init_show="init_show"
|
||
@complete="complete"
|
||
@init="init"></blow>
|
||
|
||
<blowImg v-if="type==5"
|
||
ref="blowRef"
|
||
:canvasId="canvasId"
|
||
:height="height"
|
||
:width="width"
|
||
:percentage="percentage"
|
||
:touchSize="touchSize"
|
||
:fillColor="fillColor"
|
||
:watermark="watermark"
|
||
:watermarkColor="watermarkColor"
|
||
:watermarkSize="watermarkSize"
|
||
:title="title"
|
||
:titleColor="titleColor"
|
||
:titleSize="titleSize"
|
||
:disabled="disabled"
|
||
|
||
:is_show="is_show"
|
||
:result_img="result_img"
|
||
:result_txt="result_txt"
|
||
:txtFontSize="txtFontSize"
|
||
:txtColor="txtColor"
|
||
:init_show="init_show"
|
||
@complete="complete"
|
||
@init="init"></blowImg>
|
||
|
||
<blowAny v-if="type==6"
|
||
ref="blowRef"
|
||
:canvasId="canvasId"
|
||
:height="height"
|
||
:width="width"
|
||
:percentage="percentage"
|
||
:touchSize="touchSize"
|
||
:fillColor="fillColor"
|
||
:watermark="watermark"
|
||
:watermarkColor="watermarkColor"
|
||
:watermarkSize="watermarkSize"
|
||
:title="title"
|
||
:titleColor="titleColor"
|
||
:titleSize="titleSize"
|
||
:disabled="disabled"
|
||
|
||
:is_show="is_show"
|
||
:result_img="result_img"
|
||
:result_txt="result_txt"
|
||
:txtFontSize="txtFontSize"
|
||
:txtColor="txtColor"
|
||
:init_show="init_show"
|
||
@complete="complete"
|
||
@init="init">
|
||
<slot></slot>
|
||
</blowAny>
|
||
</view>
|
||
</template>
|
||
|
||
<script>
|
||
import marquee from './marquee.vue';
|
||
import turnplate from './turnplate.vue';
|
||
import turnLottery from './turnLottery.vue';
|
||
import blow from './blow.vue';
|
||
import blowImg from './blow_img.vue';
|
||
import blowAny from './blow_any.vue';
|
||
export default {
|
||
components: {
|
||
marquee,
|
||
turnplate,
|
||
turnLottery,
|
||
blow,
|
||
blowImg,
|
||
blowAny,
|
||
},
|
||
props: {
|
||
type: {
|
||
type: Number,
|
||
default: 1, //1:翻牌 2:跑马灯 3:转盘 4: 刮一刮(文本) 5: 刮一刮(图片)6: 刮一刮(随便定义)
|
||
},
|
||
list: {
|
||
type: Array,
|
||
default () {
|
||
return []
|
||
}
|
||
},
|
||
availableSurplusNum:{
|
||
type: Number,
|
||
default: 0
|
||
},
|
||
height: {
|
||
type: Number,
|
||
default: 150
|
||
},
|
||
width: {
|
||
type: Number,
|
||
default: 150
|
||
},
|
||
themeColor: {
|
||
type: String,
|
||
default: '#33CCCC',
|
||
},
|
||
btn_Color: {
|
||
type: String,
|
||
default: '#ffffff',
|
||
},
|
||
seled_Color: {
|
||
type: String,
|
||
default: '#f43f3b',
|
||
},
|
||
seled_t_Color: {
|
||
type: String,
|
||
default: '#98FB98',
|
||
},
|
||
un_seled_Color: {
|
||
type: String,
|
||
default: '#00BFFF',
|
||
},
|
||
un_seled_t_Color: {
|
||
type: String,
|
||
default: '#33CCCC',
|
||
},
|
||
result_txt: {
|
||
type: String,
|
||
default: '中奖结果',
|
||
},
|
||
show_again: {
|
||
type: Boolean,
|
||
default: false
|
||
},
|
||
again_txt: {
|
||
type: String,
|
||
default: '重新开始',
|
||
},
|
||
tips_init: {
|
||
type: String,
|
||
default: '点击',
|
||
},
|
||
no_z_init: {
|
||
type: String,
|
||
default: '谢谢参与',
|
||
},
|
||
bgColor: {
|
||
type: String,
|
||
default: '#1E90FF',
|
||
},
|
||
bg_sd_Color: {
|
||
type: String,
|
||
default: '#4169E1',
|
||
},
|
||
|
||
chance_num_init :{
|
||
type: Number,
|
||
default: 5
|
||
},
|
||
height: {
|
||
type: Number,
|
||
default: 700
|
||
},
|
||
width: {
|
||
type: Number,
|
||
default: 700
|
||
},
|
||
txtColor: {
|
||
type: String,
|
||
default: '#FFFFFF',
|
||
},
|
||
txtFontSize: {
|
||
type: Number,
|
||
default: 50,
|
||
},
|
||
canvasId: {
|
||
type: String,
|
||
default: 'blow',
|
||
},
|
||
//停留位置
|
||
stay_index :{
|
||
type: Number,
|
||
default: 1
|
||
},
|
||
percentage : { //刮开百分之多少的时候开奖
|
||
type : Number ,
|
||
default : 45
|
||
},
|
||
touchSize : { //触摸画笔大小
|
||
type : Number ,
|
||
default : 20
|
||
},
|
||
fillColor : { //未刮开图层时的填充色
|
||
type : String ,
|
||
default : '#ddd'
|
||
},
|
||
watermark : { //水印文字
|
||
type : String ,
|
||
default : '刮一刮'
|
||
},
|
||
watermarkColor : { //水印文字颜色
|
||
type : String ,
|
||
default : '#c5c5c5'
|
||
},
|
||
watermarkSize : { //水印文字大小
|
||
type : Number ,
|
||
default : 14
|
||
},
|
||
title : { //提示文字
|
||
type : String ,
|
||
default : '刮一刮开奖'
|
||
},
|
||
titleColor : { //提示文字颜色
|
||
type : String ,
|
||
default : '#888'
|
||
},
|
||
titleSize : { //提示文字大小
|
||
type : Number ,
|
||
default : 24
|
||
},
|
||
disabled : { //是否禁止刮卡
|
||
type : Boolean ,
|
||
default : false
|
||
},
|
||
|
||
is_show : { //防止画布画好前闪烁
|
||
type : Boolean ,
|
||
default : false
|
||
},
|
||
result_img: {
|
||
type: String,
|
||
default: 'https://cdn.pixabay.com/photo/2021/01/04/07/38/lily-5886728__340.jpg',
|
||
},
|
||
//跑马灯启用图片背景
|
||
is_img_bg: {
|
||
type: Boolean,
|
||
default: false
|
||
},
|
||
//背景图片
|
||
theme_img_bg: {
|
||
type: String,
|
||
default: '',
|
||
},
|
||
box_shadow_Color: {
|
||
type: String,
|
||
default: '#fcc8d0',
|
||
},
|
||
//底部背景图片
|
||
bg_img: {
|
||
type: String,
|
||
default: '',
|
||
},
|
||
//翻牌选中的图片背景
|
||
seled_img: {
|
||
type: String,
|
||
default: '',
|
||
},
|
||
//翻牌未选中的图片背景
|
||
un_seled_img: {
|
||
type: String,
|
||
default: '',
|
||
},
|
||
init_show: { //是否初始化
|
||
type : Boolean ,
|
||
default : false
|
||
},
|
||
},
|
||
computed: {
|
||
|
||
|
||
},
|
||
|
||
watch: {
|
||
|
||
},
|
||
data() {
|
||
return {
|
||
|
||
};
|
||
},
|
||
|
||
methods: {
|
||
Recharge(){
|
||
this.$emit('Recharge');
|
||
},
|
||
initBlow(){
|
||
this.$refs.blowRef.initBlow()
|
||
},
|
||
show(e){
|
||
this.$emit('show', e);
|
||
},
|
||
again(e){
|
||
this.$emit('again', e);
|
||
},
|
||
result(e){
|
||
this.$emit('result', e);
|
||
},
|
||
toDetailPage(e){
|
||
this.$emit('toDetailPage', e);
|
||
},
|
||
complete(e){
|
||
this.$emit('complete', e);
|
||
},
|
||
init(e){
|
||
this.$emit('init', e);
|
||
},
|
||
},
|
||
}
|
||
</script>
|
||
|
||
<style lang="scss">
|
||
|
||
</style>
|