"use strict"; const common_vendor = require("../../common/vendor.js"); const common_assets = require("../../common/assets.js"); const _sfc_main = { data() { return { deg: 0, singleAngle: "", // 每片扇形的角度 isStart: false, areaNumber: 6, speed: 16, award: 1, awardList: [ { title: "特等奖" }, { title: "一等奖" }, { title: "二等奖" }, { title: "三等奖" }, { title: "四等奖" }, { title: "啥也没有" } ] // 顺时针对应每个奖项 }; }, methods: { jumpMine() { common_vendor.index.switchTab({ url: "/pages/mine/mine" }); }, init() { }, // 点击开始抽奖 start() { let { areaNumber } = this; common_vendor.index.__f__("log", "at pages/turntable/turntable.vue:92", "areaNumber", areaNumber); const singleAngle = 360 / areaNumber; common_vendor.index.__f__("log", "at pages/turntable/turntable.vue:94", "singleAngle", singleAngle); this.singleAngle = singleAngle; let index = Math.floor(Math.random() * 6 + 1); this.award = index; common_vendor.index.__f__("log", "at pages/turntable/turntable.vue:98", "index", index); this.begin(index); }, begin(awardNumer) { var deg = this.deg; var singleAngle = this.singleAngle; var speed = this.speed; var isStart = this.isStart; if (isStart) return; this.isStart = true; let endAddAngle = 0; common_vendor.index.__f__("log", "at pages/turntable/turntable.vue:110", "awardNumer", awardNumer); common_vendor.index.__f__("log", "at pages/turntable/turntable.vue:111", "singleAngle", singleAngle); endAddAngle = 360 - ((awardNumer - 1) * singleAngle + singleAngle / 2); const rangeAngle = (Math.floor(Math.random() * 4) + 4) * 360; common_vendor.index.__f__("log", "at pages/turntable/turntable.vue:116", endAddAngle); let cAngle; deg = 0; this.timer = setInterval(() => { if (deg < rangeAngle) { deg += speed; } else { cAngle = (endAddAngle + rangeAngle - deg) / speed; cAngle = cAngle > speed ? speed : cAngle < 1 ? 1 : cAngle; deg += cAngle; if (deg >= endAddAngle + rangeAngle) { deg = endAddAngle + rangeAngle; this.isStart = false; clearInterval(this.timer); this.turntableSuccess(); } } this.deg = deg; }, 1e3 / 60); }, // 抽奖完成后操作 turntableSuccess() { const index = this.award - 1; common_vendor.index.__f__("log", "at pages/turntable/turntable.vue:144", "bind:success", this.awardList[index]); common_vendor.index.showToast({ title: `恭喜你获得${this.awardList[index].title}`, icon: "none" }); }, /** * 开始多次抽奖 */ drawsFun(count) { common_vendor.index.__f__("log", "at pages/turntable/turntable.vue:154", "开始多次抽奖。。count", count); this.start(); }, /** * 跳转到中奖记录 */ jumpWinningRecord() { } } }; if (!Array) { const _easycom_up_image2 = common_vendor.resolveComponent("up-image"); _easycom_up_image2(); } const _easycom_up_image = () => "../../uni_modules/uview-plus/components/u-image/u-image.js"; if (!Math) { _easycom_up_image(); } function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { return { a: common_vendor.o($options.jumpMine), b: common_vendor.p({ src: "/static/common/left_b.png", width: "22", height: "22", bgColor: "#f1f6ff00" }), c: common_assets._imports_0, d: common_vendor.s("-webkit-transform:rotate(" + $data.deg + "deg) translateZ(0);transform:rotate(" + $data.deg + "deg) translateZ(0)"), e: common_assets._imports_1, f: common_vendor.o((...args) => $options.start && $options.start(...args)), g: common_vendor.o(($event) => $options.drawsFun(1)), h: common_vendor.o(($event) => $options.drawsFun(10)), i: common_vendor.o(($event) => $options.drawsFun(100)), j: common_vendor.o(($event) => $options.drawsFun(365)), k: common_vendor.o($options.jumpWinningRecord), l: common_vendor.p({ src: "/static/turntable/record.png", width: "14", height: "14", bgColor: "#f1f6ff00" }) }; } const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]); wx.createPage(MiniProgramPage); //# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/turntable/turntable.js.map