77 lines
1.9 KiB
Vue
77 lines
1.9 KiB
Vue
<template>
|
|
<div class="text warp" :class="['text-'+componentContent.textPos,{'show-more':componentContent.showMore},'terminal' + terminal]" :style="{backgroundColor:componentContent.bgColor}">
|
|
<div class="line-warp" :class="{'borderBot':componentContent.showLine}">
|
|
<h3 class="h3" :style="{fontSize:componentContent.fontSizeNum+'rpx',fontWeight:componentContent.textFontW,color:componentContent.titColor}">{{componentContent.title}}</h3>
|
|
<p class="p" :style="{fontSize:componentContent.describeSizeNum+'rpx',fontWeight:componentContent.describeFontW,color:componentContent.describeColor}">{{componentContent.describe}}</p>
|
|
<div class="btn-more" v-show="componentContent.showMore" :class="'style'+componentContent.styleValue" @click="jumpLink(item.linkObj)"><span>查看更多</span><i class="iconfont icon-arrow-right"></i></div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script setup>
|
|
import { toRefs } from 'vue';
|
|
const props = defineProps({
|
|
terminal: {
|
|
type: Number,
|
|
default: 4,
|
|
},
|
|
componentContent: {
|
|
type: Object,
|
|
default () {
|
|
return {};
|
|
}
|
|
},
|
|
})
|
|
const { terminal, componentContent } = toRefs(props)
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
.text{
|
|
position: relative;
|
|
.line-warp{
|
|
padding: 10upx 0;
|
|
}
|
|
.borderBot{
|
|
border-bottom: 1upx solid #cccc;
|
|
}
|
|
.h3{
|
|
line-height: 1.5;
|
|
}
|
|
.p{
|
|
line-height: 1.5;
|
|
margin-top: 5upx;
|
|
}
|
|
.style1{
|
|
|
|
}
|
|
.style2{
|
|
.iconfont{
|
|
display: none;
|
|
}
|
|
}
|
|
.style3{
|
|
span{
|
|
display: none;
|
|
}
|
|
}
|
|
&.text-left{
|
|
text-align: left;
|
|
&.show-more{
|
|
position: relative;
|
|
padding-right: 20upx;
|
|
.btn-more{
|
|
position: absolute;
|
|
right: 0;
|
|
top: 10upx;
|
|
}
|
|
}
|
|
}
|
|
&.text-center{
|
|
text-align: center;
|
|
}
|
|
&.text-right{
|
|
text-align: right;
|
|
}
|
|
}
|
|
</style>
|