eventsPage

This commit is contained in:
X1627315083
2024-07-21 09:00:16 +08:00
parent 4efa5322fb
commit 4b6a49f403
11 changed files with 223 additions and 49 deletions

View File

@@ -1,5 +1,5 @@
<template>
<div class="eventsDetail_page">
<div class="eventsDetail_page" :class="{active:isScroll}">
<div class="eventsDetail_title ">
<div class="modal_title_text" @click="setBack">
<i class="fi fi-sr-left"></i>
@@ -15,26 +15,15 @@
<div>{{ eventsDetail.title }}</div>
</div>
<div class="modal_title_text" v-for="item in eventsDetail.textList">
<div class="modal_title_text_intro" v-for="introItem in item.paragraph">
{{ introItem.text }}
<a v-if="introItem.link" :href="introItem.link">{{ introItem.link }}</a>
{{ introItem?.residue }}
<div class="eventsDetail_content_right_btn_box">
<div class="eventsDetail_content_right_btn" v-for="buttonItem,buttonIndex in item?.button" @click="openButton(buttonItem,buttonIndex)">
<div v-show="!loadingShow[buttonIndex]" class="started_btn">{{ buttonItem.text }}</div>
<div v-show="loadingShow[buttonIndex]" class="started_btn"><i class="fi fi-br-loading"></i></div>
</div>
</div>
<div class="modal_title_text_intro" v-for="introItem in item?.paragraph" :class="{active:introItem.display == 'flex'}" v-detailText="introItem.text">
</div>
</div>
<!-- <div class="modal_title_text">
<div class="modal_title_text_intro">Join us to explore the future of fashion!</div>
</div>
<div class="modal_title_text">
<div class="modal_title_text_intro">Event: Source Fashion</div>
<div class="modal_title_text_intro">Date: 14-16 July 2024</div>
<div class="modal_title_text_intro">Time: 9:30am 6:00pm (SUN & MON) ; 9:30-4:00pm (TUE)</div>
<div class="modal_title_text_intro">Location: Olympia London</div>
<div class="modal_title_text_intro">Stand no.: SF-G43</div>
<div class="modal_title_text_intro">Website: <a target="_blank" href="https://www.source-fashion.com/">https://www.source-fashion.com/</a></div>
</div>
<div class="modal_title_text">
<div class="modal_title_text_intro">Stay tuned for updates!</div>
</div> -->
</div>
</div>
@@ -46,11 +35,12 @@ import { defineComponent,h ,toRefs,ref,reactive,onMounted,nextTick,provide,compu
// import HeaderComponent from "@/component/HomePage/Header.vue";
// import RobotAssist from "@/component/HomePage/RobotAssist.vue";
import { Https } from "@/tool/https";
import { message, Upload, Modal } from "ant-design-vue";
import fullScreenImg from '@/component/HomePage/fullScreenImg.vue'
import { useRouter } from 'vue-router';
import { useI18n } from "vue-i18n";
import generalMenu from "@/component/HomePage/generalMenu.vue";
import {eventsItem} from "@/assets/json/events.json";
import eventData from "@/assets/json/events.json";
import { useStore } from "vuex";
export default defineComponent({
components: {
@@ -77,6 +67,7 @@ export default defineComponent({
},
isShowMark:false,
isNoData:false,//如果数据为空就不加载
loadingShow:{},
})
let systemUser = computed(()=>{
return store.state.UserHabit.systemUser
@@ -85,9 +76,27 @@ export default defineComponent({
}
let setBack = ()=>{
router.go(-1);
}
let openButton = (data:any,index:number)=>{
if(filter.loadingShow[index]){
return
}
filter.loadingShow[index] = true
Https.axiosGet(data.https).then(
(rv: any) => {
if(rv){
console.log(rv);
message.success(data.success)
filter.loadingShow[index] = false
}
}
).catch(res=>{
filter.loadingShow[index] = false
});
}
onMounted (()=>{
eventsItem.forEach((item:any)=>{
eventData.eventsItem.forEach((item:any)=>{
if(item.id == router.currentRoute.value.query.id){
filter.eventsDetail = item;
}
@@ -98,8 +107,16 @@ export default defineComponent({
systemUser,
likeFile,
setBack,
openButton,
}
},
directives:{
detailText:{
mounted (el,binding) {
el.innerHTML = binding.value
}
}
},
async mounted(){
},
@@ -111,6 +128,16 @@ export default defineComponent({
width: 100%;
padding: 0 9rem;
padding-top: 5rem;
&.active{
display: flex;
flex-direction: column;
height: 100%;
.eventsDetail_content{
overflow-y: auto;
width: 100%;
}
}
@media (max-width: 768px) {
padding-top: 0;
min-height: auto;
@@ -120,27 +147,29 @@ export default defineComponent({
display: flex;
padding: 2rem 0rem;
align-items: center;
border-bottom: 1px solid #f0f0f0;
position: sticky;
top: 0;
z-index: 222;
background: #fff;
.modal_title_text{
cursor: pointer;
display: flex;
margin-bottom: 0;
}
.modal_title_text:hover .eventsDetail_title_text{
text-decoration: underline;
}
i{
display: flex;
align-items: center;
margin-right: 1rem;
}
}
.eventsDetail_title:hover .eventsDetail_title_text{
text-decoration: underline;
}
.eventsDetail_content{
border-top: 1px solid #f0f0f0;
display: flex;
justify-content: space-between;
margin-top: 8rem;
padding-top: 8rem;
@media (max-width: 768px) {
flex-direction: column;
}
@@ -155,6 +184,9 @@ export default defineComponent({
@media (max-width: 768px) {
width: 100%;
}
.ant-image{
height: auto;
}
.eventsDetail_content_left_img{
width: 100%;
cursor: zoom-in;
@@ -164,9 +196,38 @@ export default defineComponent({
.modal_title_text{
letter-spacing: .4rem;
font-weight: 600;
.modal_title_text_intro{
display: block;
&.active{
display: flex;
justify-content: space-between;
}
li{
width: 48%;
}
em{
// font-family: auto;
}
a{
display: inline;
}
}
.eventsDetail_content_right_btn_box{
display: flex;
justify-content: space-evenly;
.eventsDetail_content_right_btn{
}
}
}
.modal_title_text:last-child{
border-bottom: 3px solid;
}
.modal_title_text:last-child::after{
content: "";
display: block;
border-top: 3px solid;
height: 6rem;
}
}
}

View File

@@ -263,7 +263,7 @@ export default defineComponent({
this.accountIsLogin(this.userInfo);
}
this.isHaveBindEmail = this.userInfo?.email ? true : false;
if(!isMurmur){
if(!this.isMurmur){
this.operateClick();
document.addEventListener("click", this.operateClick);
}

View File

@@ -466,6 +466,9 @@ export default defineComponent({
Https.axiosPost(Https.httpUrls.designWorksRegisterCode, data).then(
(rv: any) => {
if (rv) {
if(rv.systemUser == 4){
rv.systemUser = 1
}
this.createTimer();
let isTest = rv.systemUser == 3?true:false
let isBeginner = rv.isBeginner == 1?true:false