Compare commits
8 Commits
d15f739c6c
...
summer
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d239b3f8fb | ||
|
|
8f74351ebc | ||
| 5ffb8d8e76 | |||
| 9204daccf2 | |||
| 3a20e989b3 | |||
|
|
070a49155a | ||
|
|
d0d616a598 | ||
|
|
0b680fe379 |
1
.env.fat
@@ -5,3 +5,4 @@ VITE_FOLDER = /vite-4
|
||||
VITE_APPID = wxc2bc9f9e8d19b504
|
||||
VITE_API = /intfgw/data/mmoactivity
|
||||
VITE_URL = https://w-stg.pingan.com.cn/lckj/pawm-mmo-activity-xgl-frontend/index.html
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ import http from './http'
|
||||
|
||||
// 获取code
|
||||
export function authorize(data, authorization) {
|
||||
return http.post("/h5/Oauth/authorize",
|
||||
return http.post("/h5/oauth/authorize",
|
||||
data,
|
||||
true,
|
||||
);
|
||||
@@ -10,7 +10,7 @@ export function authorize(data, authorization) {
|
||||
|
||||
// 获取用户信息
|
||||
export function getUserInfo(data, authorization) {
|
||||
return http.post("/h5/Oauth/getUserInfo",
|
||||
return http.post("/h5/oauth/getUserInfo",
|
||||
data,
|
||||
true,
|
||||
);
|
||||
@@ -54,7 +54,7 @@ export function exchangePrize(data, authorization) {
|
||||
|
||||
// 分享接口
|
||||
export function getShareConfig(data, authorization) {
|
||||
return http.post("/h5/Oauth/getShareConfig",
|
||||
return http.post("/h5/oauth/getShareConfig",
|
||||
data,
|
||||
true,
|
||||
);
|
||||
|
||||
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 174 KiB After Width: | Height: | Size: 176 KiB |
|
Before Width: | Height: | Size: 224 KiB After Width: | Height: | Size: 267 KiB |
|
Before Width: | Height: | Size: 176 KiB After Width: | Height: | Size: 162 KiB |
|
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 147 KiB After Width: | Height: | Size: 124 KiB |
|
Before Width: | Height: | Size: 150 KiB After Width: | Height: | Size: 132 KiB |
|
Before Width: | Height: | Size: 164 KiB After Width: | Height: | Size: 145 KiB |
|
Before Width: | Height: | Size: 76 KiB After Width: | Height: | Size: 87 KiB |
|
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 82 KiB |
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 89 KiB |
@@ -3,6 +3,8 @@ import { Toast } from "vant";
|
||||
import { debounceTap } from "@/plugins";
|
||||
import gsap from "gsap";
|
||||
import { useMainStore } from "@/store";
|
||||
import Preloader from "@/plugins/Preloader";
|
||||
import { pageQAImg } from "@/data/imgList";
|
||||
|
||||
const emit = defineEmits(["IndexPage"]);
|
||||
const userStore = useMainStore();
|
||||
@@ -33,11 +35,13 @@ const showRule = (event) => {
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
onMounted(() => {
|
||||
gsap.from(".index-bg,.index-island,.index-cloud-1,.index-cloud-2,.index-tree-1", { duration: 1, scale: 1.2, autoAlpha: 0 });
|
||||
gsap.from(".index-title", { duration: 1, y: 20, autoAlpha: 0 });
|
||||
gsap.from(".index-sub-title", { duration: 1, x: 20, autoAlpha: 0 });
|
||||
gsap.from(
|
||||
".index-bg,.index-island,.index-cloud-1,.index-cloud-2,.index-tree-1",
|
||||
{ duration: 1, scale: 1.2, autoAlpha: 0 }
|
||||
);
|
||||
gsap.from(".index-title", { duration: 1, y: 20, autoAlpha: 0 });
|
||||
gsap.from(".index-sub-title", { duration: 1, x: 20, autoAlpha: 0 });
|
||||
gsap.from(".index-rule-btn", { duration: 1, x: -100, autoAlpha: 0 });
|
||||
gsap.from(".index-prize-btn", {
|
||||
duration: 1,
|
||||
@@ -56,21 +60,62 @@ onMounted(() => {
|
||||
scale: 0.4,
|
||||
autoAlpha: 0,
|
||||
delay: 0.5,
|
||||
onComplete:()=>{
|
||||
gsap.to('.index-start-btn',{duration:1,scale:'0.9',repeat:-1,yoyo:true,ease:'bounce.in'})
|
||||
gsap.to('.index-cloud-1',{duration:2,x:-30,repeat:-1,yoyo:true,ease:'none'})
|
||||
gsap.to('.index-cloud-2',{duration:2,x:30,repeat:-1,yoyo:true,ease:'none'})
|
||||
gsap.to('.index-tree-1',{duration:2,y:10,repeat:-1,yoyo:true,ease:'none'})
|
||||
gsap.to('.index-title',{duration:2.5,y:-20,repeat:-1,yoyo:true,ease:'none'})
|
||||
gsap.to('.index-sub-title',{duration:3,x:10,repeat:-1,yoyo:true,ease:'none'})
|
||||
onComplete: () => {
|
||||
gsap.to(".index-start-btn", {
|
||||
duration: 1,
|
||||
scale: "0.9",
|
||||
repeat: -1,
|
||||
yoyo: true,
|
||||
ease: "bounce.in",
|
||||
});
|
||||
gsap.to(".index-cloud-1", {
|
||||
duration: 2,
|
||||
x: -30,
|
||||
repeat: -1,
|
||||
yoyo: true,
|
||||
ease: "none",
|
||||
});
|
||||
gsap.to(".index-cloud-2", {
|
||||
duration: 2,
|
||||
x: 30,
|
||||
repeat: -1,
|
||||
yoyo: true,
|
||||
ease: "none",
|
||||
});
|
||||
gsap.to(".index-tree-1", {
|
||||
duration: 2,
|
||||
y: 10,
|
||||
repeat: -1,
|
||||
yoyo: true,
|
||||
ease: "none",
|
||||
});
|
||||
gsap.to(".index-title", {
|
||||
duration: 2.5,
|
||||
y: -20,
|
||||
repeat: -1,
|
||||
yoyo: true,
|
||||
ease: "none",
|
||||
});
|
||||
gsap.to(".index-sub-title", {
|
||||
duration: 3,
|
||||
x: 10,
|
||||
repeat: -1,
|
||||
yoyo: true,
|
||||
ease: "none",
|
||||
});
|
||||
|
||||
}
|
||||
// 开始加载答题页面资源
|
||||
Preloader({
|
||||
name: "加载答题页资源",
|
||||
imgs: pageQAImg,
|
||||
callback: (progress) => {
|
||||
// console.log("进度:", progress);
|
||||
},
|
||||
}).then((res) => {
|
||||
console.log("done!");
|
||||
});
|
||||
},
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
});
|
||||
|
||||
const vcNum = ref(false);
|
||||
@@ -95,12 +140,20 @@ const showVC = () => {
|
||||
<div class="index-sub-title"></div>
|
||||
<div class="index-rule-btn" @click="showRule($event)"></div>
|
||||
<!-- v-if="userStore.hasPrize" -->
|
||||
<div class="index-prize-btn" @click="showMyPrize($event)"></div>
|
||||
<div class="index-prize-btn" @click="showMyPrize($event)"></div>
|
||||
<div class="index-start-btn" @click="start"></div>
|
||||
<div class="index-agreement">
|
||||
风险提示: 本材料由平安理财有限责任公司(以下简称“平安理财”)制作并提供。<span
|
||||
class="b">本资料内容及观点仅供参考,不构成对任何人的投资建议。</span>以上产品投资管理机构/管理人为平安理财,代理销售机构不承担产品的投资、兑付和风险管理的责任。以上产品通过代理销售机构渠道销售的,产品风险评级应当以代理销售机构最终披露的评级结果为准。以上产品为非保本浮动收益理财产品,具体以产品说明书或产品公告披露为准。产品的业绩比较基准指管理人基于过往投资经验以及对产品存续期投资市场波动的预判而对本产品所设定的投资目标,业绩比较基准不是预期收益率,不代表产品的未来表现和实际收益,不构成对产品收益的承诺。<span
|
||||
class="b">理财产品过往业绩不代表其未来表现,不等于理财产品实际收益,投资须谨慎。过往业绩相关数据已经托管人核对。</span><span class="orange">理财非存款,产品有风险,投资须谨慎。</span>金融消费者不得利用金融产品和服务从事违法活动。
|
||||
<div class="agreement">
|
||||
风险提示:
|
||||
本材料由平安理财有限责任公司(以下简称“平安理财”)制作并提供。<span
|
||||
class="b"
|
||||
>本资料内容及观点仅供参考,不构成对任何人的投资建议。</span
|
||||
>以上产品投资管理机构/管理人为平安理财,代理销售机构不承担产品的投资、兑付和风险管理的责任。以上产品通过代理销售机构渠道销售的,产品风险评级应当以代理销售机构最终披露的评级结果为准。以上产品为非保本浮动收益理财产品,具体以产品说明书或产品公告披露为准。产品的业绩比较基准指管理人基于过往投资经验以及对产品存续期投资市场波动的预判而对本产品所设定的投资目标,业绩比较基准不是预期收益率,不代表产品的未来表现和实际收益,不构成对产品收益的承诺。<span
|
||||
class="b"
|
||||
>理财产品过往业绩不代表其未来表现,不等于理财产品实际收益,投资须谨慎。过往业绩相关数据已经托管人核对。</span
|
||||
><span class="orange">理财非存款,产品有风险,投资须谨慎。</span
|
||||
>金融消费者不得利用金融产品和服务从事违法活动。
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -122,7 +175,6 @@ const showVC = () => {
|
||||
@include pos(750px, 1624px, 0px, 50%);
|
||||
transform: translateY(-50%);
|
||||
|
||||
|
||||
// .index-logo{
|
||||
// pointer-events: none;
|
||||
// @include pos(632px, 94px, 59px, 267px);
|
||||
@@ -131,29 +183,29 @@ const showVC = () => {
|
||||
|
||||
.index-title {
|
||||
// pointer-events: none;
|
||||
@include pos(632px, 253px, 46px, 254px);
|
||||
@include pos(633px, 253px, 46px, 254px);
|
||||
@include bg_pos("index/title.png");
|
||||
}
|
||||
|
||||
.index-island{
|
||||
.index-island {
|
||||
pointer-events: none;
|
||||
@include pos(714px, 867px, 15px, 542px);
|
||||
@include bg_pos("index/island.png");
|
||||
}
|
||||
|
||||
.index-cloud-1{
|
||||
.index-cloud-1 {
|
||||
pointer-events: none;
|
||||
@include pos(210px, 147px, -15px, 535px);
|
||||
@include bg_pos("index/cloud-1.png");
|
||||
}
|
||||
|
||||
.index-cloud-2{
|
||||
.index-cloud-2 {
|
||||
pointer-events: none;
|
||||
@include pos(151px, 172px, 656px, 486px);
|
||||
@include bg_pos("index/cloud-2.png");
|
||||
}
|
||||
|
||||
.index-tree-1{
|
||||
.index-tree-1 {
|
||||
pointer-events: none;
|
||||
@include pos(228px, 199px, -45px, 492px);
|
||||
@include bg_pos("index/tree-1.png");
|
||||
@@ -181,29 +233,32 @@ const showVC = () => {
|
||||
}
|
||||
|
||||
.index-agreement {
|
||||
font-family: 'HarmonyOS_Sans_SC_Regular';
|
||||
font-family: "HarmonyOS_Sans_SC_Regular";
|
||||
pointer-events: none;
|
||||
@include pos(736px, 182px, 7px, 1230px);
|
||||
background-color: rgba(255, 255, 255,0.75);
|
||||
font-size: 14px;
|
||||
text-align: justify;
|
||||
letter-spacing: 0.1px;
|
||||
color: #124284;
|
||||
padding: 10px;
|
||||
box-sizing: border-box;
|
||||
border-radius: 2px;
|
||||
line-height: 20px;
|
||||
|
||||
.b {
|
||||
font-weight: 700;
|
||||
}
|
||||
.agreement {
|
||||
background-color: rgba(255, 255, 255, 0.75);
|
||||
|
||||
.orange {
|
||||
color: #f5430c;
|
||||
font-weight: 700;
|
||||
font-size: 14px;
|
||||
text-align: justify;
|
||||
letter-spacing: 0.1px;
|
||||
color: #124284;
|
||||
padding: 10px;
|
||||
box-sizing: border-box;
|
||||
border-radius: 2px;
|
||||
line-height: 20px;
|
||||
|
||||
.b {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.orange {
|
||||
color: #f5430c;
|
||||
font-weight: 700;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -5,6 +5,8 @@ import { data } from "@/data";
|
||||
import { debounceTap, FYShuffle, mostValue, judgeBigScreen } from "@/plugins";
|
||||
import { useMainStore } from "@/store";
|
||||
import { subAnswer } from "@/api";
|
||||
import Preloader from "@/plugins/Preloader";
|
||||
import { pageResultImg } from "@/data/imgList";
|
||||
|
||||
// 页面配置初始化
|
||||
const emit = defineEmits(["QuestionPage"]);
|
||||
@@ -22,7 +24,7 @@ const isChecked = ref(false);
|
||||
const answerFn = (item, event) => {
|
||||
let e = event.target.parentElement;
|
||||
activeId.value = item.aid; //更新选中状态
|
||||
console.log("选项", item);
|
||||
// console.log("选项", item);
|
||||
debounceTap(e, () => {
|
||||
let cid = questionList.value[currentId.value].id;
|
||||
let has = answerList.value.findIndex((obj) => obj.id === cid);
|
||||
@@ -41,9 +43,9 @@ const answerFn = (item, event) => {
|
||||
gsap.set(".option-tips,.analysis", { autoAlpha: 1 });
|
||||
gsap.set(".answer-box", { pointerEvents: "none" });
|
||||
isChecked.value = true;
|
||||
console.log("currentId.value", currentId.value);
|
||||
// console.log("currentId.value", currentId.value);
|
||||
if (currentId.value == 2) {
|
||||
console.log("over");
|
||||
// console.log("over");
|
||||
gsap.set(".create-btn", { autoAlpha: 1 });
|
||||
} else {
|
||||
gsap.set(".next-btn", { autoAlpha: 1 });
|
||||
@@ -121,8 +123,31 @@ const getRandomNumber = (arr) => {
|
||||
onMounted(() => {
|
||||
gsap.from(".question-bg", { duration: 0.5, autoAlpha: 0 });
|
||||
gsap.from(".question-box", { duration: 0.5, y: 30, autoAlpha: 0 });
|
||||
gsap.from(".answer-box", { duration: 0.5, y: 30, autoAlpha: 0 });
|
||||
gsap.to('.question-tree', { duration: 3, transformOrigin: '0% 70%', rotation: '-10deg', repeat: -1, yoyo: true, ease: 'none' })
|
||||
gsap.from(".answer-box", {
|
||||
duration: 0.5,
|
||||
y: 30,
|
||||
autoAlpha: 0,
|
||||
onComplete: () => {
|
||||
// 开始加载答题页面资源
|
||||
Preloader({
|
||||
name: "加载结果页资源",
|
||||
imgs: pageResultImg,
|
||||
callback: (progress) => {
|
||||
// console.log("进度:", progress);
|
||||
},
|
||||
}).then((res) => {
|
||||
console.log("done!");
|
||||
});
|
||||
},
|
||||
});
|
||||
gsap.to(".question-tree", {
|
||||
duration: 3,
|
||||
transformOrigin: "0% 70%",
|
||||
rotation: "-10deg",
|
||||
repeat: -1,
|
||||
yoyo: true,
|
||||
ease: "none",
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
@@ -133,20 +158,19 @@ onMounted(() => {
|
||||
<div class="question-box">
|
||||
<div class="question-tree"></div>
|
||||
<div class="question-con">
|
||||
<!-- 问题序号 -->
|
||||
<div class="qa-number">第{{ questionList[currentId].id }}题</div>
|
||||
<div class="qa-question-box">
|
||||
<!-- 问题 -->
|
||||
<div
|
||||
class="question-text"
|
||||
v-for="item in questionList[currentId].question"
|
||||
:key="item"
|
||||
>
|
||||
{{ item }}
|
||||
<!-- 问题序号 -->
|
||||
<div class="qa-number">第{{ questionList[currentId].id }}题</div>
|
||||
<div class="qa-question-box">
|
||||
<!-- 问题 -->
|
||||
<div
|
||||
class="question-text"
|
||||
v-for="item in questionList[currentId].question"
|
||||
:key="item"
|
||||
>
|
||||
{{ item }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- 选项 -->
|
||||
<div class="answer-box">
|
||||
@@ -156,7 +180,7 @@ onMounted(() => {
|
||||
:class="[
|
||||
isChecked ? item.result + '-text' : '',
|
||||
isChecked ? item.result + '-box' : '',
|
||||
]"
|
||||
]"
|
||||
:key="item.aid"
|
||||
>
|
||||
<div class="answer-text" v-for="a in item.text" :key="a">
|
||||
@@ -173,12 +197,12 @@ onMounted(() => {
|
||||
</div>
|
||||
</div>
|
||||
<!-- 解析 -->
|
||||
<div class="analysis">
|
||||
<!-- <div class="analysis">
|
||||
<div v-for="li in questionList[currentId].analysis" :key="li">
|
||||
<span class="analysis-icon"></span>
|
||||
{{ li }}
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
<div class="next-btn" @click="nextQuestion($event)"></div>
|
||||
<div class="create-btn" @click="viewResult($event)"></div>
|
||||
</div>
|
||||
@@ -201,7 +225,6 @@ onMounted(() => {
|
||||
@include pos(750px, 1624px, 0px, 50%);
|
||||
transform: translateY(-50%);
|
||||
@include bg_pos("qa/bg.jpg");
|
||||
|
||||
}
|
||||
|
||||
.question-container {
|
||||
@@ -210,55 +233,54 @@ onMounted(() => {
|
||||
@include flexCen();
|
||||
justify-content: space-around;
|
||||
|
||||
.question-box{
|
||||
.question-box {
|
||||
@include box(696px, 441px);
|
||||
@include bg_pos("qa/question-box.png");
|
||||
position: relative;
|
||||
|
||||
.question-tree{
|
||||
@include pos(277px, 232px,-100px,-141px);
|
||||
.question-tree {
|
||||
@include pos(277px, 232px, -100px, -141px);
|
||||
@include bg_pos("qa/tree.png");
|
||||
}
|
||||
|
||||
.question-con {
|
||||
@include pos(696px, 441px,0px,0px);
|
||||
@include bg_pos("qa/question-box.png");
|
||||
@include pos(696px, 441px, 0px, 0px);
|
||||
@include bg_pos("qa/question-box.png");
|
||||
|
||||
.qa-number {
|
||||
@include pos(696px, 86px, 0px, 0px);
|
||||
font-size: 40px;
|
||||
color: #ffffff;
|
||||
font-weight: 700;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
text-align: justifyLeft;
|
||||
text-shadow: 0px 6px 6px rgba(49, 116, 246, 0.9);
|
||||
}
|
||||
.qa-number {
|
||||
@include pos(696px, 86px, 0px, 0px);
|
||||
font-size: 40px;
|
||||
color: #ffffff;
|
||||
font-weight: 700;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
text-align: justifyLeft;
|
||||
text-shadow: 0px 6px 6px rgba(49, 116, 246, 0.9);
|
||||
}
|
||||
|
||||
.qa-question-box {
|
||||
@include pos(626px, 243px, 37px, 177px);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
.qa-question-box {
|
||||
@include pos(626px, 243px, 37px, 177px);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
// 问题样式
|
||||
.question-text {
|
||||
width: 100%;
|
||||
font-family: "HarmonyOS_Sans_SC_Regular";
|
||||
font-size: 30px;
|
||||
letter-spacing: 1.5px;
|
||||
color: #065ac6;
|
||||
text-align: center;
|
||||
padding: 40px;
|
||||
text-align: justify;
|
||||
line-height: 55px;
|
||||
// 问题样式
|
||||
.question-text {
|
||||
width: 100%;
|
||||
font-family: "HarmonyOS_Sans_SC_Regular";
|
||||
font-size: 30px;
|
||||
letter-spacing: 1.5px;
|
||||
color: #065ac6;
|
||||
text-align: center;
|
||||
padding: 40px;
|
||||
text-align: justify;
|
||||
line-height: 55px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// 选项样式
|
||||
.answer-box {
|
||||
@@ -274,6 +296,8 @@ onMounted(() => {
|
||||
padding: 0 50px;
|
||||
font-family: "HarmonyOS_Sans_SC_Regular";
|
||||
|
||||
|
||||
|
||||
.answer {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
@@ -287,6 +311,10 @@ onMounted(() => {
|
||||
position: relative;
|
||||
box-shadow: 0px 0px 5px rgba(255, 255, 255, 0.361) inset;
|
||||
|
||||
.answer-text {
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.bubble-1 {
|
||||
@include pos(55px, 5px, 88px, 7px);
|
||||
@include bg_pos("qa/bubble-1.png");
|
||||
@@ -324,8 +352,7 @@ onMounted(() => {
|
||||
.correct-text {
|
||||
color: #e74c00;
|
||||
// background-color: rgba(255, 255, 255, 0.471);
|
||||
box-shadow: 5px 5px 5px rgba(255, 240, 192, 0.471) inset;
|
||||
|
||||
box-shadow: 5px 5px 5px rgba(255, 240, 192, 0.471) inset;
|
||||
}
|
||||
|
||||
.option-tips {
|
||||
|
||||
@@ -88,7 +88,7 @@ const createPoster = (event) => {
|
||||
{
|
||||
name: "text",
|
||||
src: posterTextSrc,
|
||||
pos: { w: 337, h: 117, x: 81, y: 1133 },
|
||||
pos: { w: 347, h: 155, x: 81, y: 1113 },
|
||||
},
|
||||
]
|
||||
);
|
||||
@@ -213,15 +213,15 @@ const hideShare = () => {
|
||||
}
|
||||
|
||||
.r-text-1 {
|
||||
@include pos(638px, 814px, 67px, 396px);
|
||||
@include pos(642px, 865px, 67px, 396px);
|
||||
@include bg_pos("result/text-1.png");
|
||||
}
|
||||
.r-text-2 {
|
||||
@include pos(643px, 814px, 67px, 396px);
|
||||
@include pos(644px, 830px, 59px, 407px);
|
||||
@include bg_pos("result/text-2.png");
|
||||
}
|
||||
.r-text-3 {
|
||||
@include pos(643px, 844px, 63px, 392px);
|
||||
@include pos(642px, 876px, 63px, 392px);
|
||||
@include bg_pos("result/text-3.png");
|
||||
}
|
||||
|
||||
|
||||
@@ -33,7 +33,8 @@ onMounted(() => {
|
||||
<div class="rule-text-area wrapper">
|
||||
<div>
|
||||
<div class="part">
|
||||
<div>活动时间:2024年7月31日——8月2日</div>
|
||||
<div>活动时间:</div>
|
||||
<div>2024年8月14日8:30-2024年8月16日17:30</div>
|
||||
<div>活动奖励:微信红包</div>
|
||||
</div>
|
||||
<div class="part">
|
||||
@@ -50,14 +51,9 @@ onMounted(() => {
|
||||
</div>
|
||||
<div>2、成功领奖后,奖品将会在24小时内自动到账,请耐心等候;</div>
|
||||
<div>3、中奖人请在活动结束前进行兑换,逾期视为弃权。</div>
|
||||
<div class="part">其他:</div>
|
||||
<div>
|
||||
活动期间如遇到任何问题,请在<span class="blod">[平安理财服务号]</span>后台咨询,我们会在一个工作日内回复。
|
||||
</div>
|
||||
<div class="part">说明:平安理财有权对活动规则进行解释</div>
|
||||
</div>
|
||||
<div class="part">
|
||||
<div>活动规则:</div>
|
||||
<div>其他说明:</div>
|
||||
<div>
|
||||
1、本活动由平安理财有限责任公司主办,为保证活动的公平公正,活动结束后主办方将对中奖用户信息进行核对,用户若有下列任何一种行为或情况的,主办方有权不经另行通知,取消其参与活动以及获奖资格,收回奖品权益,井保留追究其法律责任的权利:
|
||||
</div>
|
||||
@@ -117,8 +113,8 @@ onMounted(() => {
|
||||
|
||||
.part {
|
||||
color: #0070d9;
|
||||
font-size: 20px;
|
||||
line-height: 35px;
|
||||
font-size: 24px;
|
||||
line-height: 40px;
|
||||
margin-top: 30px;
|
||||
text-align: justify;
|
||||
padding: 0 10px;
|
||||
|
||||
@@ -13,6 +13,27 @@ const page = [
|
||||
"index/title.png",
|
||||
"index/island.png",
|
||||
|
||||
"rule/cls-btn.png",
|
||||
"rule/arrow.png",
|
||||
"rule/rule-box.png",
|
||||
"rule/icon.png",
|
||||
];
|
||||
|
||||
// 问题页面
|
||||
const pageQA = [
|
||||
"qa/bubble-1.png",
|
||||
"qa/analysis-icon.png",
|
||||
"qa/create-btn.png",
|
||||
"qa/next-btn.png",
|
||||
"qa/incorrect.png",
|
||||
"qa/correct.png",
|
||||
"qa/question-box.png",
|
||||
"qa/tree.png",
|
||||
"qa/bg.jpg",
|
||||
]
|
||||
|
||||
// 结果页面
|
||||
const pageResult = [
|
||||
"prize/copy-btn2.png",
|
||||
"prize/copy-btn.png",
|
||||
"prize/cls-btn.png",
|
||||
@@ -27,17 +48,6 @@ const page = [
|
||||
"prize/prize-box.png",
|
||||
"prize/myPrize-box.png",
|
||||
"prize/draw-box.png",
|
||||
|
||||
"qa/bubble-1.png",
|
||||
"qa/analysis-icon.png",
|
||||
"qa/create-btn.png",
|
||||
"qa/next-btn.png",
|
||||
"qa/incorrect.png",
|
||||
"qa/correct.png",
|
||||
"qa/question-box.png",
|
||||
"qa/tree.png",
|
||||
"qa/bg.jpg",
|
||||
|
||||
"result/cls-btn.png",
|
||||
"result/poster-text.png",
|
||||
"result/go-draw-btn.png",
|
||||
@@ -50,15 +60,10 @@ const page = [
|
||||
"result/r-bg-2.jpg",
|
||||
"result/r-bg-1.jpg",
|
||||
"result/r-bg-3.jpg",
|
||||
"result/poster-1.jpg",
|
||||
"result/poster-3.jpg",
|
||||
"result/poster-2.jpg",
|
||||
|
||||
"rule/cls-btn.png",
|
||||
"rule/arrow.png",
|
||||
"rule/rule-box.png",
|
||||
"rule/icon.png",
|
||||
];
|
||||
// "result/poster-1.jpg",
|
||||
// "result/poster-3.jpg",
|
||||
// "result/poster-2.jpg",
|
||||
]
|
||||
|
||||
// 处理为vite引入图片格式
|
||||
function imgCreate(url, img) {
|
||||
@@ -66,8 +71,15 @@ function imgCreate(url, img) {
|
||||
img.push(i);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
const loadImg = [];
|
||||
const pageImg = [];
|
||||
const pageQAImg = [];
|
||||
const pageResultImg = [];
|
||||
|
||||
|
||||
load.forEach((element) => {
|
||||
imgCreate(element, loadImg);
|
||||
@@ -77,4 +89,12 @@ page.forEach((element) => {
|
||||
imgCreate(element, pageImg);
|
||||
});
|
||||
|
||||
export { loadImg, pageImg };
|
||||
pageQA.forEach((element) => {
|
||||
imgCreate(element, pageQAImg);
|
||||
});
|
||||
|
||||
pageResult.forEach((element) => {
|
||||
imgCreate(element, pageResultImg);
|
||||
});
|
||||
|
||||
export { loadImg, pageImg,pageQAImg,pageResultImg };
|
||||
|
||||
@@ -1,23 +1,24 @@
|
||||
export const data = [
|
||||
{
|
||||
id: 1,
|
||||
type: '1',
|
||||
question: [
|
||||
'激情夏日温度攀升,理财投资热情高涨。当理财市场有波动、收益上涨,别人劝你搏一搏时,正确的做法是:',
|
||||
'低波稳健类产品通常是指配置大比例低波资产,不投资权益类资产的产品 \n,受债市波动影响较小且不受股市影响。低波稳健类产品的产品风险评级是哪个?',
|
||||
],
|
||||
answer: [
|
||||
{
|
||||
aid: 'A',
|
||||
text: [
|
||||
'当然all in,我就是热点中心',
|
||||
'R1低风险或R2中低风险',
|
||||
],
|
||||
result:'incorrect',
|
||||
result:'correct',
|
||||
},
|
||||
{
|
||||
aid: 'B',
|
||||
text: [
|
||||
'鸡蛋不放在一个篮子里,样样都来点儿',
|
||||
'R4及以上高风险',
|
||||
],
|
||||
result:'correct',
|
||||
result:'incorrect',
|
||||
},
|
||||
],
|
||||
analysis: ['解析:选择B。虽然市场热点可能带来诱人的收益,但理财的基本原则是风险管理。通过将投资分散在不同的理财产品和市场,可以降低单一投资的风险,争取资产增长的机会。']
|
||||
@@ -25,22 +26,22 @@ export const data = [
|
||||
{
|
||||
id: 2,
|
||||
question: [
|
||||
'夏日闲钱早规划,get生活小确幸。长期来看,选择哪类型理财,可以较稳健地进行闲钱进阶?',
|
||||
'经常热衷于购买现金管理类产品的投资者,如果希望进行“稳健的理财进阶”,需要牺牲一定流动性换取收益空间,以下哪类产品可以帮助实现:',
|
||||
],
|
||||
answer: [
|
||||
{
|
||||
aid: 'A',
|
||||
text: [
|
||||
'较低风险的现金类产品',
|
||||
'最短持有期类理财产品',
|
||||
],
|
||||
result:'incorrect',
|
||||
result:'correct',
|
||||
},
|
||||
{
|
||||
aid: 'B',
|
||||
text: [
|
||||
'策略稳健的固收类理财产品',
|
||||
'混合类理财产品',
|
||||
],
|
||||
result:'correct',
|
||||
result:'incorrect',
|
||||
},
|
||||
],
|
||||
analysis: ['解析:选择B。现金类产品具有高流动性的特征,更适合日常流动资金。但在长期限选择中,固收理财拥有较大的投资范围和空间,运用策略提供稳健体验,有效平衡风险,力争增厚收益机会,闲钱再进阶。因此不同的资金用途记得匹配不同产品噢。']
|
||||
@@ -48,20 +49,20 @@ export const data = [
|
||||
{
|
||||
id: 3,
|
||||
question: [
|
||||
'夏天的快乐是多巴胺旅行给的!想要一场说走就走的快乐,平时的旅行备用金该如何准备才好呢?',
|
||||
'低波稳健类理财通常会通过估值、资产、策略三方面实现“低波稳健”的特征,以下哪个描述是正确的:',
|
||||
],
|
||||
answer: [
|
||||
{
|
||||
aid: 'A',
|
||||
text: [
|
||||
'购买最短持有期理财产品,享灵活与收益空间',
|
||||
'精选存单存款等低波资产的理财产品更稳健',
|
||||
],
|
||||
result:'correct',
|
||||
},
|
||||
{
|
||||
aid: 'B',
|
||||
text: [
|
||||
'船到桥头自然直',
|
||||
'混合估值法不能在市场震荡时帮助净值更平稳',
|
||||
],
|
||||
result:'incorrect',
|
||||
},
|
||||
|
||||
@@ -40,8 +40,6 @@ const showDraw = ref(false);
|
||||
const showRule = ref(false);
|
||||
const showResult = ref(false);
|
||||
|
||||
|
||||
|
||||
const loadFn = (item) => {
|
||||
if (item.action == "hide") {
|
||||
showLoad.value = false;
|
||||
|
||||
@@ -51,10 +51,7 @@ body {
|
||||
font-family: "HarmonyOS_Sans_SC_Regular";
|
||||
src: url(@/assets/font/HarmonyOS_Sans_SC_Regular.ttf) format("truetype");
|
||||
}
|
||||
@font-face {
|
||||
font-family: "DouyinSansBold";
|
||||
src: url(@/assets/font/DouyinSansBold.ttf) format("truetype");
|
||||
}
|
||||
|
||||
|
||||
* {
|
||||
padding: 0;
|
||||
|
||||
@@ -33,7 +33,7 @@ export default defineConfig(({ command, mode }) => {
|
||||
template: 'index.html',
|
||||
injectOptions: {
|
||||
data: {
|
||||
title: '平安理财 邂逅清凉一夏',
|
||||
title: '好“理”在手 邂逅清凉一夏',
|
||||
},
|
||||
}
|
||||
},
|
||||
|
||||