|
|
@ -1,10 +1,15 @@ |
|
|
|
<template> |
|
|
|
<template> |
|
|
|
<div class="wrap"> |
|
|
|
<div class="wrap"> |
|
|
|
<el-carousel :interval="6000" :arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'" :indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'"> |
|
|
|
<el-carousel :interval="6000" |
|
|
|
|
|
|
|
:arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'" |
|
|
|
|
|
|
|
:indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'"> |
|
|
|
<template v-for="(item, i) in modules[0].list"> |
|
|
|
<template v-for="(item, i) in modules[0].list"> |
|
|
|
<el-carousel-item v-if="item.pic && item.isEnable" :key="i"> |
|
|
|
<el-carousel-item v-if="item.pic && item.isEnable" |
|
|
|
<div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]" @click="openLink(item)"> |
|
|
|
:key="i"> |
|
|
|
<img :src="item.pic" alt=""> |
|
|
|
<div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]" |
|
|
|
|
|
|
|
@click="openLink(item)"> |
|
|
|
|
|
|
|
<img :src="item.pic" |
|
|
|
|
|
|
|
alt=""> |
|
|
|
<p class="banner-name">{{ item.title }}</p> |
|
|
|
<p class="banner-name">{{ item.title }}</p> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</el-carousel-item> |
|
|
|
</el-carousel-item> |
|
|
@ -13,42 +18,67 @@ |
|
|
|
|
|
|
|
|
|
|
|
<div class="block station"> |
|
|
|
<div class="block station"> |
|
|
|
<div class="inner"> |
|
|
|
<div class="inner"> |
|
|
|
<h6 class="wow fadeInUp">{{ modules[1].form.title }}</h6> |
|
|
|
<h6 class="wow fadeInUp" |
|
|
|
<p class="en wow fadeInUp" data-wow-delay="0.5s">{{ modules[1].form.subTitle }}</p> |
|
|
|
v-html="modules[1].form.title"></h6> |
|
|
|
<div v-if="modules[1].form.pic" class="text-center"> |
|
|
|
<p class="en wow fadeInUp" |
|
|
|
<video v-if="Util.isVideo(modules[1].form.mediaType)" class="pic" ref="video" autoplay controls loop> |
|
|
|
data-wow-delay="0.5s">{{ modules[1].form.subTitle }}</p> |
|
|
|
<source :src="modules[1].form.pic" type="video/mp4"> |
|
|
|
<div v-if="modules[1].form.pic" |
|
|
|
|
|
|
|
class="text-center"> |
|
|
|
|
|
|
|
<video v-if="Util.isVideo(modules[1].form.mediaType)" |
|
|
|
|
|
|
|
class="pic" |
|
|
|
|
|
|
|
ref="video" |
|
|
|
|
|
|
|
autoplay |
|
|
|
|
|
|
|
controls |
|
|
|
|
|
|
|
loop> |
|
|
|
|
|
|
|
<source :src="modules[1].form.pic" |
|
|
|
|
|
|
|
type="video/mp4"> |
|
|
|
您的浏览器不支持 video 标签。 |
|
|
|
您的浏览器不支持 video 标签。 |
|
|
|
</video> |
|
|
|
</video> |
|
|
|
<img v-else class="pic" :src="modules[1].form.pic" alt=""> |
|
|
|
<img v-else |
|
|
|
|
|
|
|
class="pic" |
|
|
|
|
|
|
|
:src="modules[1].form.pic" |
|
|
|
|
|
|
|
alt=""> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="des" v-html="modules[1].form.des"></div> |
|
|
|
<div class="des" |
|
|
|
|
|
|
|
v-html="modules[1].form.des"></div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
|
|
<ul class="list"> |
|
|
|
<ul class="list"> |
|
|
|
<li :class="['item1', {'cursor-pointer': isLink(modules[2].form.link.linkName)}]" @click="openLink(modules[2].form)"> |
|
|
|
<li :class="['item1', {'cursor-pointer': isLink(modules[2].form.link.linkName)}]" |
|
|
|
<img src="@/assets/images/exp/2.png" alt=""> |
|
|
|
@click="openLink(modules[2].form)"> |
|
|
|
|
|
|
|
<img src="@/assets/images/exp/2.png" |
|
|
|
|
|
|
|
alt=""> |
|
|
|
<h6>{{ modules[2].form.title }}</h6> |
|
|
|
<h6>{{ modules[2].form.title }}</h6> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li :class="['item2', {'cursor-pointer': isLink(modules[3].form.link.linkName)}]" @click="openLink(modules[3].form)"> |
|
|
|
<li :class="['item2', {'cursor-pointer': isLink(modules[3].form.link.linkName)}]" |
|
|
|
<img src="@/assets/images/exp/3.png" alt=""> |
|
|
|
@click="openLink(modules[3].form)"> |
|
|
|
|
|
|
|
<img src="@/assets/images/exp/3.png" |
|
|
|
|
|
|
|
alt=""> |
|
|
|
<h6>{{ modules[3].form.title }}</h6> |
|
|
|
<h6>{{ modules[3].form.title }}</h6> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li :class="['item3', {'cursor-pointer': isLink(modules[4].form.link.linkName)}]" @click="openLink(modules[4].form)"> |
|
|
|
<li :class="['item3', {'cursor-pointer': isLink(modules[4].form.link.linkName)}]" |
|
|
|
<img src="@/assets/images/exp/4.png" alt=""> |
|
|
|
@click="openLink(modules[4].form)"> |
|
|
|
|
|
|
|
<img src="@/assets/images/exp/4.png" |
|
|
|
|
|
|
|
alt=""> |
|
|
|
<h6>{{ modules[4].form.title }}</h6> |
|
|
|
<h6>{{ modules[4].form.title }}</h6> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li :class="['item4', {'cursor-pointer': isLink(modules[5].form.link.linkName)}]" @click="openLink(modules[5].form)"> |
|
|
|
<li :class="['item4', {'cursor-pointer': isLink(modules[5].form.link.linkName)}]" |
|
|
|
<img src="@/assets/images/exp/5.png" alt=""> |
|
|
|
@click="openLink(modules[5].form)"> |
|
|
|
|
|
|
|
<img src="@/assets/images/exp/5.png" |
|
|
|
|
|
|
|
alt=""> |
|
|
|
<h6>{{ modules[5].form.title }}</h6> |
|
|
|
<h6>{{ modules[5].form.title }}</h6> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li :class="['item5', {'cursor-pointer': isLink(modules[6].form.link.linkName)}]" @click="openLink(modules[6].form)"> |
|
|
|
<li :class="['item5', {'cursor-pointer': isLink(modules[6].form.link.linkName)}]" |
|
|
|
<img src="@/assets/images/exp/6.png" alt=""> |
|
|
|
@click="openLink(modules[6].form)"> |
|
|
|
|
|
|
|
<img src="@/assets/images/exp/6.png" |
|
|
|
|
|
|
|
alt=""> |
|
|
|
<h6>{{ modules[6].form.title }}</h6> |
|
|
|
<h6>{{ modules[6].form.title }}</h6> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li :class="['item6', {'cursor-pointer': isLink(modules[7].form.link.linkName)}]" @click="openLink(modules[7].form)"> |
|
|
|
<li :class="['item6', {'cursor-pointer': isLink(modules[7].form.link.linkName)}]" |
|
|
|
<img src="@/assets/images/exp/7.png" alt=""> |
|
|
|
@click="openLink(modules[7].form)"> |
|
|
|
|
|
|
|
<img src="@/assets/images/exp/7.png" |
|
|
|
|
|
|
|
alt=""> |
|
|
|
<h6>{{ modules[7].form.title }}</h6> |
|
|
|
<h6>{{ modules[7].form.title }}</h6> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
</ul> |
|
|
|
</ul> |
|
|
@ -62,18 +92,18 @@ import Util from '@/libs/util' |
|
|
|
import WOW from 'wow.js' |
|
|
|
import WOW from 'wow.js' |
|
|
|
export default { |
|
|
|
export default { |
|
|
|
mixins: [mixins], |
|
|
|
mixins: [mixins], |
|
|
|
data() { |
|
|
|
data () { |
|
|
|
return { |
|
|
|
return { |
|
|
|
routes: [], |
|
|
|
routes: [], |
|
|
|
Util |
|
|
|
Util |
|
|
|
} |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
mounted() { |
|
|
|
mounted () { |
|
|
|
new WOW().init() |
|
|
|
new WOW().init() |
|
|
|
}, |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
methods: { |
|
|
|
// 获取文章详情 |
|
|
|
// 获取文章详情 |
|
|
|
getInfo() { |
|
|
|
getInfo () { |
|
|
|
// 预览/详情 |
|
|
|
// 预览/详情 |
|
|
|
this.$post(`${this.api[this.preview ? 'getRedisCache' : 'findPage']}?columnId=${this.id}`).then(({ data }) => { |
|
|
|
this.$post(`${this.api[this.preview ? 'getRedisCache' : 'findPage']}?columnId=${this.id}`).then(({ data }) => { |
|
|
|
if (data.length) { |
|
|
|
if (data.length) { |
|
|
@ -84,7 +114,7 @@ export default { |
|
|
|
this.modules = json |
|
|
|
this.modules = json |
|
|
|
console.log("🚀 ~ file: index.vue ~ line 180 ~ this.$post ~ json", json) |
|
|
|
console.log("🚀 ~ file: index.vue ~ line 180 ~ this.$post ~ json", json) |
|
|
|
} |
|
|
|
} |
|
|
|
}).catch(err => {}) |
|
|
|
}).catch(err => { }) |
|
|
|
}, |
|
|
|
}, |
|
|
|
} |
|
|
|
} |
|
|
|
}; |
|
|
|
}; |
|
|
@ -92,14 +122,14 @@ export default { |
|
|
|
|
|
|
|
|
|
|
|
<style lang="scss" scoped> |
|
|
|
<style lang="scss" scoped> |
|
|
|
@import url(../../plugins/wow/animate.css); |
|
|
|
@import url(../../plugins/wow/animate.css); |
|
|
|
@import "../../styles/page/page.scss"; |
|
|
|
@import '../../styles/page/page.scss'; |
|
|
|
.wrap{ |
|
|
|
.wrap { |
|
|
|
/deep/ .el-carousel { |
|
|
|
/deep/ .el-carousel { |
|
|
|
height: 12.6rem; |
|
|
|
height: 12.6rem; |
|
|
|
.el-carousel__container{ |
|
|
|
.el-carousel__container { |
|
|
|
height: 12.6rem; |
|
|
|
height: 12.6rem; |
|
|
|
} |
|
|
|
} |
|
|
|
img{ |
|
|
|
img { |
|
|
|
height: 12.6rem; |
|
|
|
height: 12.6rem; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -136,7 +166,7 @@ export default { |
|
|
|
margin-bottom: 20px; |
|
|
|
margin-bottom: 20px; |
|
|
|
font-size: 1.7rem; |
|
|
|
font-size: 1.7rem; |
|
|
|
font-family: AppleSystemUIFont; |
|
|
|
font-family: AppleSystemUIFont; |
|
|
|
color: #E4E4E4; |
|
|
|
color: #e4e4e4; |
|
|
|
line-height: 1; |
|
|
|
line-height: 1; |
|
|
|
} |
|
|
|
} |
|
|
|
.pic { |
|
|
|
.pic { |
|
|
@ -146,7 +176,7 @@ export default { |
|
|
|
} |
|
|
|
} |
|
|
|
.des { |
|
|
|
.des { |
|
|
|
margin-top: 2.75rem; |
|
|
|
margin-top: 2.75rem; |
|
|
|
font-size: .98rem; |
|
|
|
font-size: 0.98rem; |
|
|
|
color: #333; |
|
|
|
color: #333; |
|
|
|
line-height: 1.7rem; |
|
|
|
line-height: 1.7rem; |
|
|
|
-webkit-line-clamp: inherit; |
|
|
|
-webkit-line-clamp: inherit; |
|
|
@ -171,7 +201,7 @@ export default { |
|
|
|
img { |
|
|
|
img { |
|
|
|
width: 100%; |
|
|
|
width: 100%; |
|
|
|
height: 100%; |
|
|
|
height: 100%; |
|
|
|
transition: .5s; |
|
|
|
transition: 0.5s; |
|
|
|
} |
|
|
|
} |
|
|
|
h6 { |
|
|
|
h6 { |
|
|
|
position: absolute; |
|
|
|
position: absolute; |
|
|
@ -182,7 +212,8 @@ export default { |
|
|
|
font-weight: 500; |
|
|
|
font-weight: 500; |
|
|
|
color: #fff; |
|
|
|
color: #fff; |
|
|
|
} |
|
|
|
} |
|
|
|
.item1, .item2 { |
|
|
|
.item1, |
|
|
|
|
|
|
|
.item2 { |
|
|
|
width: 25%; |
|
|
|
width: 25%; |
|
|
|
} |
|
|
|
} |
|
|
|
.item3 { |
|
|
|
.item3 { |
|
|
@ -200,18 +231,18 @@ export default { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@media (min-width: 280px) and (max-width: 768px) { |
|
|
|
@media (min-width: 280px) and (max-width: 768px) { |
|
|
|
.wrap{ |
|
|
|
.wrap { |
|
|
|
/deep/ .el-carousel { |
|
|
|
/deep/ .el-carousel { |
|
|
|
height: 15rem; |
|
|
|
height: 15rem; |
|
|
|
.el-carousel__container{ |
|
|
|
.el-carousel__container { |
|
|
|
height: 15rem; |
|
|
|
height: 15rem; |
|
|
|
} |
|
|
|
} |
|
|
|
img{ |
|
|
|
img { |
|
|
|
height: 15rem; |
|
|
|
height: 15rem; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.station{ |
|
|
|
.station { |
|
|
|
.pic { |
|
|
|
.pic { |
|
|
|
height: 20rem; |
|
|
|
height: 20rem; |
|
|
|
} |
|
|
|
} |
|
|
@ -237,7 +268,7 @@ export default { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.banner-item{ |
|
|
|
.banner-item { |
|
|
|
img { |
|
|
|
img { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
@ -256,7 +287,6 @@ export default { |
|
|
|
height: auto; |
|
|
|
height: auto; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.list { |
|
|
|
.list { |
|
|
@ -280,7 +310,7 @@ export default { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.banner-item{ |
|
|
|
.banner-item { |
|
|
|
img { |
|
|
|
img { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
@ -299,7 +329,6 @@ export default { |
|
|
|
height: auto; |
|
|
|
height: auto; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.list { |
|
|
|
.list { |
|
|
@ -311,7 +340,7 @@ export default { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
@media (min-width: 375px) and (max-width: 480px) { |
|
|
|
@media (min-width: 375px) and (max-width: 480px) { |
|
|
|
.wrap { |
|
|
|
.wrap { |
|
|
|
/deep/ .el-carousel { |
|
|
|
/deep/ .el-carousel { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
@ -323,7 +352,7 @@ export default { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.banner-item{ |
|
|
|
.banner-item { |
|
|
|
img { |
|
|
|
img { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
@ -342,7 +371,6 @@ export default { |
|
|
|
height: auto; |
|
|
|
height: auto; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.list { |
|
|
|
.list { |
|
|
@ -366,7 +394,7 @@ export default { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.banner-item{ |
|
|
|
.banner-item { |
|
|
|
img { |
|
|
|
img { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
@ -385,7 +413,6 @@ export default { |
|
|
|
height: auto; |
|
|
|
height: auto; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.list { |
|
|
|
.list { |
|
|
@ -409,7 +436,7 @@ export default { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.banner-item{ |
|
|
|
.banner-item { |
|
|
|
img { |
|
|
|
img { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
@ -428,7 +455,6 @@ export default { |
|
|
|
height: auto; |
|
|
|
height: auto; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.list { |
|
|
|
.list { |
|
|
@ -452,7 +478,7 @@ export default { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.banner-item{ |
|
|
|
.banner-item { |
|
|
|
img { |
|
|
|
img { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
@ -471,14 +497,13 @@ export default { |
|
|
|
height: auto; |
|
|
|
height: auto; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.list { |
|
|
|
.list { |
|
|
|
display: flex; |
|
|
|
display: flex; |
|
|
|
width: 100%; |
|
|
|
width: 100%; |
|
|
|
li { |
|
|
|
li { |
|
|
|
width: 25% ; |
|
|
|
width: 25%; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.item3 { |
|
|
|
.item3 { |
|
|
@ -497,7 +522,7 @@ export default { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.banner-item{ |
|
|
|
.banner-item { |
|
|
|
img { |
|
|
|
img { |
|
|
|
height: 13rem !important; |
|
|
|
height: 13rem !important; |
|
|
|
} |
|
|
|
} |
|
|
@ -516,14 +541,13 @@ export default { |
|
|
|
height: auto; |
|
|
|
height: auto; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.list { |
|
|
|
.list { |
|
|
|
display: flex; |
|
|
|
display: flex; |
|
|
|
width: 100%; |
|
|
|
width: 100%; |
|
|
|
li { |
|
|
|
li { |
|
|
|
width: 25% ; |
|
|
|
width: 25%; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.item3 { |
|
|
|
.item3 { |
|
|
|