diff --git a/index.html b/index.html index eb6c75e..2d7f63f 100644 --- a/index.html +++ b/index.html @@ -6,6 +6,7 @@ <%- title%> + diff --git a/public/icon.svg b/public/icon.svg new file mode 100644 index 0000000..e7b8dfb --- /dev/null +++ b/public/icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/images/index/bg.jpg b/src/assets/images/index/bg.jpg index 61b6a65..c7f0a85 100644 Binary files a/src/assets/images/index/bg.jpg and b/src/assets/images/index/bg.jpg differ diff --git a/src/assets/images/index/bottom-bg.png b/src/assets/images/index/bottom-bg.png index 19e7865..56c74e4 100644 Binary files a/src/assets/images/index/bottom-bg.png and b/src/assets/images/index/bottom-bg.png differ diff --git a/src/assets/images/index/cloud.png b/src/assets/images/index/cloud.png index ae28d69..d56f895 100644 Binary files a/src/assets/images/index/cloud.png and b/src/assets/images/index/cloud.png differ diff --git a/src/assets/images/index/fan-1.png b/src/assets/images/index/fan-1.png index 3b13535..01498fd 100644 Binary files a/src/assets/images/index/fan-1.png and b/src/assets/images/index/fan-1.png differ diff --git a/src/assets/images/index/fan-2.png b/src/assets/images/index/fan-2.png index 61bb137..7ae3ada 100644 Binary files a/src/assets/images/index/fan-2.png and b/src/assets/images/index/fan-2.png differ diff --git a/src/assets/images/index/fan-3.png b/src/assets/images/index/fan-3.png index 760ec0d..93aa7cc 100644 Binary files a/src/assets/images/index/fan-3.png and b/src/assets/images/index/fan-3.png differ diff --git a/src/assets/images/index/fan-4.png b/src/assets/images/index/fan-4.png index 241cc39..b31bb9d 100644 Binary files a/src/assets/images/index/fan-4.png and b/src/assets/images/index/fan-4.png differ diff --git a/src/assets/images/index/firework.png b/src/assets/images/index/firework.png index 460126a..44de480 100644 Binary files a/src/assets/images/index/firework.png and b/src/assets/images/index/firework.png differ diff --git a/src/assets/images/index/pet-icon.png b/src/assets/images/index/pet-icon.png index 3285ba5..ee38768 100644 Binary files a/src/assets/images/index/pet-icon.png and b/src/assets/images/index/pet-icon.png differ diff --git a/src/assets/images/index/prize-btn.png b/src/assets/images/index/prize-btn.png index 9851d28..a0b4632 100644 Binary files a/src/assets/images/index/prize-btn.png and b/src/assets/images/index/prize-btn.png differ diff --git a/src/assets/images/index/rule-btn.png b/src/assets/images/index/rule-btn.png index d58e940..4ec21fd 100644 Binary files a/src/assets/images/index/rule-btn.png and b/src/assets/images/index/rule-btn.png differ diff --git a/src/assets/images/index/start-btn.png b/src/assets/images/index/start-btn.png index 86d213e..96a5625 100644 Binary files a/src/assets/images/index/start-btn.png and b/src/assets/images/index/start-btn.png differ diff --git a/src/assets/images/index/title.png b/src/assets/images/index/title.png index 41b29d2..72723d7 100644 Binary files a/src/assets/images/index/title.png and b/src/assets/images/index/title.png differ diff --git a/src/assets/images/index/windows.png b/src/assets/images/index/windows.png index 9139b2b..e48a612 100644 Binary files a/src/assets/images/index/windows.png and b/src/assets/images/index/windows.png differ diff --git a/src/assets/images/result/bg-1.jpg b/src/assets/images/result/bg-1.jpg deleted file mode 100644 index c98f260..0000000 Binary files a/src/assets/images/result/bg-1.jpg and /dev/null differ diff --git a/src/assets/images/result/bg-2.jpg b/src/assets/images/result/bg-2.jpg deleted file mode 100644 index fc3cd56..0000000 Binary files a/src/assets/images/result/bg-2.jpg and /dev/null differ diff --git a/src/assets/images/result/bg-3.jpg b/src/assets/images/result/bg-3.jpg deleted file mode 100644 index bd6195a..0000000 Binary files a/src/assets/images/result/bg-3.jpg and /dev/null differ diff --git a/src/assets/images/result/bg-4.jpg b/src/assets/images/result/bg-4.jpg deleted file mode 100644 index 2f7d499..0000000 Binary files a/src/assets/images/result/bg-4.jpg and /dev/null differ diff --git a/src/assets/images/result/bg.jpg b/src/assets/images/result/bg.jpg new file mode 100644 index 0000000..c42bea6 Binary files /dev/null and b/src/assets/images/result/bg.jpg differ diff --git a/src/assets/images/result/blessing-text-1-1.png b/src/assets/images/result/blessing-text-1-1.png new file mode 100644 index 0000000..e0f5fae Binary files /dev/null and b/src/assets/images/result/blessing-text-1-1.png differ diff --git a/src/assets/images/result/blessing-text-1-2.png b/src/assets/images/result/blessing-text-1-2.png new file mode 100644 index 0000000..84bfd6e Binary files /dev/null and b/src/assets/images/result/blessing-text-1-2.png differ diff --git a/src/assets/images/result/blessing-text-2-1.png b/src/assets/images/result/blessing-text-2-1.png new file mode 100644 index 0000000..c20052d Binary files /dev/null and b/src/assets/images/result/blessing-text-2-1.png differ diff --git a/src/assets/images/result/blessing-text-2-2.png b/src/assets/images/result/blessing-text-2-2.png new file mode 100644 index 0000000..07f8e8e Binary files /dev/null and b/src/assets/images/result/blessing-text-2-2.png differ diff --git a/src/assets/images/result/blessing-text-3-1.png b/src/assets/images/result/blessing-text-3-1.png new file mode 100644 index 0000000..b9597a8 Binary files /dev/null and b/src/assets/images/result/blessing-text-3-1.png differ diff --git a/src/assets/images/result/blessing-text-3-2.png b/src/assets/images/result/blessing-text-3-2.png new file mode 100644 index 0000000..f17af8e Binary files /dev/null and b/src/assets/images/result/blessing-text-3-2.png differ diff --git a/src/assets/images/result/cls-btn.png b/src/assets/images/result/cls-btn.png index cc6f2ee..c35458e 100644 Binary files a/src/assets/images/result/cls-btn.png and b/src/assets/images/result/cls-btn.png differ diff --git a/src/assets/images/result/create-btn.png b/src/assets/images/result/create-btn.png index 5d58a8d..97e1987 100644 Binary files a/src/assets/images/result/create-btn.png and b/src/assets/images/result/create-btn.png differ diff --git a/src/assets/images/result/go-draw-btn.png b/src/assets/images/result/go-draw-btn.png index 1a9d2ad..09d456a 100644 Binary files a/src/assets/images/result/go-draw-btn.png and b/src/assets/images/result/go-draw-btn.png differ diff --git a/src/assets/images/result/go-share-btn.png b/src/assets/images/result/go-share-btn.png index 6687796..55869ea 100644 Binary files a/src/assets/images/result/go-share-btn.png and b/src/assets/images/result/go-share-btn.png differ diff --git a/src/assets/images/result/larnten-1.png b/src/assets/images/result/larnten-1.png new file mode 100644 index 0000000..393de93 Binary files /dev/null and b/src/assets/images/result/larnten-1.png differ diff --git a/src/assets/images/result/larnten-2.png b/src/assets/images/result/larnten-2.png new file mode 100644 index 0000000..d6fd0c6 Binary files /dev/null and b/src/assets/images/result/larnten-2.png differ diff --git a/src/assets/images/result/larnten-3.png b/src/assets/images/result/larnten-3.png new file mode 100644 index 0000000..852f697 Binary files /dev/null and b/src/assets/images/result/larnten-3.png differ diff --git a/src/assets/images/result/poster-bg-1.jpg b/src/assets/images/result/poster-bg-1.jpg deleted file mode 100644 index c50d468..0000000 Binary files a/src/assets/images/result/poster-bg-1.jpg and /dev/null differ diff --git a/src/assets/images/result/poster-bg-2.jpg b/src/assets/images/result/poster-bg-2.jpg deleted file mode 100644 index 55028e8..0000000 Binary files a/src/assets/images/result/poster-bg-2.jpg and /dev/null differ diff --git a/src/assets/images/result/poster-bg-3.jpg b/src/assets/images/result/poster-bg-3.jpg deleted file mode 100644 index cfc75f4..0000000 Binary files a/src/assets/images/result/poster-bg-3.jpg and /dev/null differ diff --git a/src/assets/images/result/poster-bg-4.jpg b/src/assets/images/result/poster-bg-4.jpg deleted file mode 100644 index 8529f3f..0000000 Binary files a/src/assets/images/result/poster-bg-4.jpg and /dev/null differ diff --git a/src/assets/images/result/poster.jpg b/src/assets/images/result/poster.jpg new file mode 100644 index 0000000..7a161bc Binary files /dev/null and b/src/assets/images/result/poster.jpg differ diff --git a/src/assets/images/result/preveiw-1.png b/src/assets/images/result/preveiw-1.png new file mode 100644 index 0000000..c21d1a0 Binary files /dev/null and b/src/assets/images/result/preveiw-1.png differ diff --git a/src/assets/images/result/preveiw-2.png b/src/assets/images/result/preveiw-2.png new file mode 100644 index 0000000..0028060 Binary files /dev/null and b/src/assets/images/result/preveiw-2.png differ diff --git a/src/assets/images/result/preveiw-3.png b/src/assets/images/result/preveiw-3.png new file mode 100644 index 0000000..67d39b4 Binary files /dev/null and b/src/assets/images/result/preveiw-3.png differ diff --git a/src/assets/images/result/product-1.png b/src/assets/images/result/product-1.png index 883d60c..71ca115 100644 Binary files a/src/assets/images/result/product-1.png and b/src/assets/images/result/product-1.png differ diff --git a/src/assets/images/result/product-2.png b/src/assets/images/result/product-2.png new file mode 100644 index 0000000..e47e3a7 Binary files /dev/null and b/src/assets/images/result/product-2.png differ diff --git a/src/assets/images/result/product-3.png b/src/assets/images/result/product-3.png new file mode 100644 index 0000000..a2f71af Binary files /dev/null and b/src/assets/images/result/product-3.png differ diff --git a/src/assets/images/result/product/ENFJ.png b/src/assets/images/result/product/ENFJ.png deleted file mode 100644 index 976f8ff..0000000 Binary files a/src/assets/images/result/product/ENFJ.png and /dev/null differ diff --git a/src/assets/images/result/product/ENFP.png b/src/assets/images/result/product/ENFP.png deleted file mode 100644 index 69eecf5..0000000 Binary files a/src/assets/images/result/product/ENFP.png and /dev/null differ diff --git a/src/assets/images/result/product/ENTJ.png b/src/assets/images/result/product/ENTJ.png deleted file mode 100644 index 433996e..0000000 Binary files a/src/assets/images/result/product/ENTJ.png and /dev/null differ diff --git a/src/assets/images/result/product/ENTP.png b/src/assets/images/result/product/ENTP.png deleted file mode 100644 index 354a5a0..0000000 Binary files a/src/assets/images/result/product/ENTP.png and /dev/null differ diff --git a/src/assets/images/result/product/ESFJ.png b/src/assets/images/result/product/ESFJ.png deleted file mode 100644 index c667372..0000000 Binary files a/src/assets/images/result/product/ESFJ.png and /dev/null differ diff --git a/src/assets/images/result/product/ESFP.png b/src/assets/images/result/product/ESFP.png deleted file mode 100644 index 1a652ce..0000000 Binary files a/src/assets/images/result/product/ESFP.png and /dev/null differ diff --git a/src/assets/images/result/product/ESTJ.png b/src/assets/images/result/product/ESTJ.png deleted file mode 100644 index fdb1844..0000000 Binary files a/src/assets/images/result/product/ESTJ.png and /dev/null differ diff --git a/src/assets/images/result/product/ESTP.png b/src/assets/images/result/product/ESTP.png deleted file mode 100644 index ee12b88..0000000 Binary files a/src/assets/images/result/product/ESTP.png and /dev/null differ diff --git a/src/assets/images/result/product/INFJ.png b/src/assets/images/result/product/INFJ.png deleted file mode 100644 index 116b37c..0000000 Binary files a/src/assets/images/result/product/INFJ.png and /dev/null differ diff --git a/src/assets/images/result/product/INFP.png b/src/assets/images/result/product/INFP.png deleted file mode 100644 index 4b2e404..0000000 Binary files a/src/assets/images/result/product/INFP.png and /dev/null differ diff --git a/src/assets/images/result/product/INTJ.png b/src/assets/images/result/product/INTJ.png deleted file mode 100644 index 712bf4c..0000000 Binary files a/src/assets/images/result/product/INTJ.png and /dev/null differ diff --git a/src/assets/images/result/product/INTP.png b/src/assets/images/result/product/INTP.png deleted file mode 100644 index 882ba83..0000000 Binary files a/src/assets/images/result/product/INTP.png and /dev/null differ diff --git a/src/assets/images/result/product/ISFJ.png b/src/assets/images/result/product/ISFJ.png deleted file mode 100644 index d12ad3d..0000000 Binary files a/src/assets/images/result/product/ISFJ.png and /dev/null differ diff --git a/src/assets/images/result/product/ISFP.png b/src/assets/images/result/product/ISFP.png deleted file mode 100644 index 0440f8e..0000000 Binary files a/src/assets/images/result/product/ISFP.png and /dev/null differ diff --git a/src/assets/images/result/product/ISTJ.png b/src/assets/images/result/product/ISTJ.png deleted file mode 100644 index 98ccadc..0000000 Binary files a/src/assets/images/result/product/ISTJ.png and /dev/null differ diff --git a/src/assets/images/result/product/ISTP.png b/src/assets/images/result/product/ISTP.png deleted file mode 100644 index 1600a88..0000000 Binary files a/src/assets/images/result/product/ISTP.png and /dev/null differ diff --git a/src/assets/images/result/select-arrow.png b/src/assets/images/result/select-arrow.png deleted file mode 100644 index 59b6690..0000000 Binary files a/src/assets/images/result/select-arrow.png and /dev/null differ diff --git a/src/assets/images/result/select-tips.png b/src/assets/images/result/select-tips.png deleted file mode 100644 index 500dd43..0000000 Binary files a/src/assets/images/result/select-tips.png and /dev/null differ diff --git a/src/assets/images/result/text.png b/src/assets/images/result/text.png new file mode 100644 index 0000000..e1641f8 Binary files /dev/null and b/src/assets/images/result/text.png differ diff --git a/src/assets/images/result/theme-1.png b/src/assets/images/result/theme-1.png deleted file mode 100644 index 784a860..0000000 Binary files a/src/assets/images/result/theme-1.png and /dev/null differ diff --git a/src/assets/images/result/theme-2.png b/src/assets/images/result/theme-2.png deleted file mode 100644 index a084155..0000000 Binary files a/src/assets/images/result/theme-2.png and /dev/null differ diff --git a/src/assets/images/result/theme-3.png b/src/assets/images/result/theme-3.png deleted file mode 100644 index 13d4470..0000000 Binary files a/src/assets/images/result/theme-3.png and /dev/null differ diff --git a/src/assets/images/result/theme-4.png b/src/assets/images/result/theme-4.png deleted file mode 100644 index 34070c0..0000000 Binary files a/src/assets/images/result/theme-4.png and /dev/null differ diff --git a/src/assets/images/result/tips.png b/src/assets/images/result/tips.png new file mode 100644 index 0000000..b4793bf Binary files /dev/null and b/src/assets/images/result/tips.png differ diff --git a/src/assets/images/share.jpg b/src/assets/images/share.jpg index 0cbbab1..76f834e 100644 Binary files a/src/assets/images/share.jpg and b/src/assets/images/share.jpg differ diff --git a/src/components/Loading.vue b/src/components/Loading.vue index d860600..50fa7cf 100644 --- a/src/components/Loading.vue +++ b/src/components/Loading.vue @@ -18,7 +18,7 @@ onMounted(() => { name: "加载页资源", imgs: loadImg, callback: (progress) => { - // console.log('进度:', progress); + console.log('进度:', progress); }, }).then((res) => { gsap.to(".LoadPage", { diff --git a/src/components/Question.vue b/src/components/Question.vue index cb33bd6..58e6117 100644 --- a/src/components/Question.vue +++ b/src/components/Question.vue @@ -42,32 +42,46 @@ const answerFn = (item, event) => { activeId.value = '' } else { + // 随机生成海报id + userStore.updatePosterId(getRandomNumber([1, 2, 3])) + gsap.set('.question-box', { pointerEvents: 'none' }) Toast('答题结束') - gsap.set('.question-box',{pointerEvents:'none'}) - } + if (import.meta.env.VITE_MODE != "dev") { + // 提交完成记录 + subAnswer({}, userStore.token).then((res) => { + console.log("key:", res); + if (res.code == 0) { + userStore.updateDrawKey(res.data); + } + + gsap.to('.QuestionPage', { + duration: 0.5, autoAlpha: 0, onComplete: () => { + emit("QuestionPage", { action: "showResult" }); + } + }) + }); + } else { + setTimeout(() => { + gsap.to('.QuestionPage', { + duration: 0.5, autoAlpha: 0, onComplete: () => { + emit("QuestionPage", { action: "showResult" }); + } + }) + }, 1000) + } + + } console.log("答案库", answerList.value); }); }; -const mbtiArr = [[], [], [], []]; //四组数组分别存放 E&I,S&T,T&F,J&P四组结果 + + const showResult = () => { - gsap.set(".answer-box", { pointerEvents: "none" }); - - - - if (import.meta.env.VITE_MODE != "dev") { - // 提交完成记录 - subAnswer({}, userStore.token).then((res) => { - console.log("key:", res); - if (res.code == 0) { - userStore.updateDrawKey(res.data); - } - }); - } - + gsap.set(".answer-box", { pointerEvents: "none" }) // Toast("你的MBTI测试结果:" + mbti); // resultBtnAni.reverse(); gsap.to(".prev-btn", { duration: 0.5, x: "-=20px", autoAlpha: 0 }); @@ -85,7 +99,11 @@ const showResult = () => { }; - +// 从数组中随机生成一个数字 +const getRandomNumber = (arr) => { + var randomIndex = Math.floor(Math.random() * arr.length); + return arr[randomIndex]; +} // 查看结果事件及动画 // const resultBtnAni = gsap.timeline({ paused: true }); diff --git a/src/components/Result.vue b/src/components/Result.vue index 523bac9..58e9f72 100644 --- a/src/components/Result.vue +++ b/src/components/Result.vue @@ -6,50 +6,19 @@ import { mbtiList } from "@/data"; import { posterCreate } from "@/plugins"; import { Toast } from "vant"; import QRCode from "qrcode"; -import { reactive } from "vue"; // 页面配置初始化 const emit = defineEmits(["ResultPage"]); const userStore = useMainStore(); -let bgId = ref(1); //海报背景id:1~4 -const bgPic = computed(() => { - return new URL( - `../assets/images/result/bg-${bgId.value}.jpg`, - import.meta.url - ).href; -}); +const posterId = ref(userStore.posterId); //海报背景id:1~4 -// 主题配色 -const theme = reactive(["#d3473a", "#fb7700", "#4172d8", "#eb5c37"]); -const mbti = ref(userStore.MBTI); -const mbtiObj = ref(mbtiList.find((item) => item.type == mbti.value)); -const posterBg = reactive([ - new URL("@/assets/images/result/poster-bg-1.jpg", import.meta.url).href, - new URL("@/assets/images/result/poster-bg-2.jpg", import.meta.url).href, - new URL("@/assets/images/result/poster-bg-3.jpg", import.meta.url).href, - new URL("@/assets/images/result/poster-bg-4.jpg", import.meta.url).href, -]); -// console.log("mbtiList", mbtiList.length); -const changBg = (event, number) => { - let e = event.target; - if (number == bgId.value) return; - bgId.value = number; - debounceTap( - e, - () => { - // console.log("bgId", bgId.value); - }, - 0.3 - ); -}; - -// With async/await +// 生成二维码逻辑 const eqcodePic = ref(); onMounted(() => { + console.log('posterId:',posterId.value); let eqCodeUrl = import.meta.env.VITE_URL; - console.log("url:", eqCodeUrl); QRCode.toDataURL(eqCodeUrl) .then((url) => { eqcodePic.value = url; @@ -64,131 +33,39 @@ onMounted(() => { scale: 1.2, autoAlpha: 0, }); - gsap.from(".mbti-title", { - duration: 0.7, - x: 100, - autoAlpha: 0, - delay: 0.3, - }); - gsap.from(".des", { - duration: 0.7, - x: 100, - autoAlpha: 0, - stagger: 0.3, - delay: 0.5, - }); - gsap.from(".blessings", { - duration: 0.7, - x: 100, - autoAlpha: 0, - stagger: 0.2, - delay: 0.6, - }); - gsap.from(".product", { - duration: 0.7, - x: 100, - autoAlpha: 0, - delay: 0.9, - }); - gsap.from(".produc-img", { - duration: 0.7, - x: 100, - autoAlpha: 0, - delay: 1.2, - }); - gsap.from(".theme-tab", { - duration: 0.7, - x: 100, - autoAlpha: 0, - stagger: 0.3, - delay: 1.4, - }); + }); +// 生成海报逻辑 const createPoster = (event) => { let e = event.target; debounceTap(e, () => { // 海报生成 posterCreate( - { width: 750, height: 1500 }, //海报尺寸 + { width: 750, height: 1334 }, //海报尺寸 // 海报素材,按顺序依次渲染 [ // 背景 { name: "bg", - src: posterBg[bgId.value - 1], - pos: { w: 750, h: 1500, x: 0, y: 0 }, - }, - // 产品 - { - name: "product", - src: mbtiObj.value.productPic, - pos: { w: mbtiObj.value.picPos.w, h: mbtiObj.value.picPos.h, x: 137, y: mbtiObj.value.type == 'INFP' ? 900 : 921 }, + src: new URL(`../assets/images/result/poster.jpg`, import.meta.url).href, + pos: { w: 750, h: 1334, x: 0, y: 0 }, }, // 二维码 { name: "eqcode", src: eqcodePic.value, - pos: { w: 140, h: 140, x: bgId.value == 3 ? 75 : 66, y: 1070 }, + pos: { w: 140, h: 140, x: 66, y: 1070 }, }, ], - // 字体素材 - [ - // mbti title及职业 - { - content: mbtiObj.value.type + " " + mbtiObj.value.job, - style: { - font: "normal 80px HYYakuHei", - pos: { x: 70, y: 340 }, - }, - }, - // mbti 描述 - { - content: mbtiObj.value.des[0], - style: { - font: "normal 30px fzzy", - color: "#af6f49", - pos: { x: 70, y: 470 }, - }, - }, - { - content: mbtiObj.value.des[1], - style: { - font: "normal 30px fzzy", - color: "#af6f49", - pos: { x: 70, y: 520 }, - }, - }, - // 新年寄语 - { - content: mbtiObj.value.blessings[0], - style: { - font: mbtiObj.value.type == 'ISFJ' ? "normal 45px fzcy" : "normal 50px fzcy", - pos: { x: 70, y: 650 }, - }, - }, - { - content: mbtiObj.value.blessings[1], - style: { - font: mbtiObj.value.type == 'ISFJ' ? "normal 45px fzcy" : "normal 50px fzcy", - pos: { x: 70, y: 725 }, - }, - }, - // 产品 - { - content: mbtiObj.value.product, - style: { - font: mbtiObj.value.type == 'ISTJ' || mbtiObj.value.type == 'INTJ' ? "normal 40px fzcy" : "normal 50px fzcy", - pos: { x: 70, y: 876 }, - }, - }, - ], - // 主题配色 - theme[bgId.value - 1] ); + + // gsap.to('.posterPop',{duration:0.5,autoAlpha:1}) + }); }; +// 去抽奖 const goDraw = (event) => { let e = event.target; debounceTap(e, () => { @@ -200,6 +77,7 @@ const goDraw = (event) => { }); }; +// 隐藏海报弹窗 const hidePop = (event) => { let e = event.target; debounceTap(e, () => { @@ -207,12 +85,15 @@ const hidePop = (event) => { }); }; +// 展示分享 const goShare = (event) => { let e = event.target; debounceTap(e, () => { gsap.to(".sharePop", { duration: 0.5, autoAlpha: 1 }); }); }; + +// 隐藏分享提示 const hideShare = () => { gsap.to(".sharePop", { duration: 0.5, autoAlpha: 0 }); }; @@ -220,11 +101,19 @@ const hideShare = () => {