Browse Source

优化

master
xuhuajiao 4 days ago
parent
commit
72936b4f4e
  1. 13
      src/views/columnListMix.vue
  2. 18
      src/views/columnListMixDetail.vue
  3. 40
      src/views/imgTxtDetail.vue

13
src/views/columnListMix.vue

@ -2,7 +2,11 @@
<div style="height:calc(100%);"> <div style="height:calc(100%);">
<div v-if="detailData && tabList[selectMenuIndex] && tabList[selectMenuIndex].type ===1" :class="isMenu ? 'new-detial-info new-menu-detial-info' :'new-detial-info'"> <div v-if="detailData && tabList[selectMenuIndex] && tabList[selectMenuIndex].type ===1" :class="isMenu ? 'new-detial-info new-menu-detial-info' :'new-detial-info'">
<h2 class="detail-title">{{ detailData.overTitle }}</h2> <h2 class="detail-title">{{ detailData.overTitle }}</h2>
<div class="detail-date">发布时间{{ detailData.create_time }}</div>
<div style="display: flex; justify-content: center; align-items: center; margin-bottom: 20px;">
<p>来源{{ detailData.source ? detailData.source :'-' }}</p>
<p style="margin:0 10px;">作者{{ detailData.author? detailData.author :'-' }}</p>
<p>责编{{ detailData.editor ? detailData.editor : '-' }}</p>
</div>
<div class="detail-content" v-html="detailData.introHtml" /> <div class="detail-content" v-html="detailData.introHtml" />
</div> </div>
<ul v-else-if="infoList.length !== 0 && tabList[selectMenuIndex] && [2].includes(tabList[selectMenuIndex]?.type)" class="activity-list scroll-container" :style="isMenu ? 'height: calc(100vh - 200px)':''"> <ul v-else-if="infoList.length !== 0 && tabList[selectMenuIndex] && [2].includes(tabList[selectMenuIndex]?.type)" class="activity-list scroll-container" :style="isMenu ? 'height: calc(100vh - 200px)':''">
@ -258,7 +262,8 @@ export default {
this.$router.push({ this.$router.push({
name: 'ColumnListMixDetail', name: 'ColumnListMixDetail',
query: { query: {
...this.$route.query
...this.$route.query,
isMenu: this.isMenu
} }
}) })
localStorage.setItem('columnListMixDetail', JSON.stringify(item)) localStorage.setItem('columnListMixDetail', JSON.stringify(item))
@ -290,10 +295,6 @@ export default {
line-height: 100px; line-height: 100px;
text-align: center; text-align: center;
} }
.detail-date{
text-align: center;
margin-bottom: 20px;
}
.detail-content{ .detail-content{
::v-deep p{ ::v-deep p{
span{ span{

18
src/views/columnListMixDetail.vue

@ -1,8 +1,12 @@
<template> <template>
<div class="detail-content">
<div class="detail-content" :style="{ height: !isMenu ? 'calc(100%)' : 'calc(100% - 60px)' }">
<div v-if="detailData" class="detail-info"> <div v-if="detailData" class="detail-info">
<h2 class="detail-title">{{ detailData.overTitle }}</h2> <h2 class="detail-title">{{ detailData.overTitle }}</h2>
<div class="detail-date">发布时间{{ detailData.create_time }}</div>
<div style="display: flex; justify-content: center; align-items: center; margin-bottom: 20px;">
<p>来源{{ detailData.source ? detailData.source :'-' }}</p>
<p style="margin:0 10px;">作者{{ detailData.author? detailData.author :'-' }}</p>
<p>责编{{ detailData.editor ? detailData.editor : '-' }}</p>
</div>
<div class="detail-content" v-html="detailData.introHtml" /> <div class="detail-content" v-html="detailData.introHtml" />
</div> </div>
@ -23,7 +27,8 @@ export default {
data() { data() {
return { return {
detailData: null, detailData: null,
loading: true
loading: true,
isMenu: false
} }
}, },
created() { created() {
@ -32,7 +37,7 @@ export default {
methods: { methods: {
loadDetailData() { loadDetailData() {
this.loading = true this.loading = true
this.isMenu = this.$route.query.isMenu
const storedData = localStorage.getItem('columnListMixDetail') const storedData = localStorage.getItem('columnListMixDetail')
if (storedData) { if (storedData) {
this.detailData = JSON.parse(storedData) this.detailData = JSON.parse(storedData)
@ -76,10 +81,6 @@ export default {
line-height: 100px; line-height: 100px;
text-align: center; text-align: center;
} }
.detail-date{
text-align: center;
margin-bottom: 20px;
}
.detail-content{ .detail-content{
::v-deep p{ ::v-deep p{
span{ span{
@ -92,6 +93,5 @@ export default {
} }
} }
} }
} }
</style> </style>

40
src/views/imgTxtDetail.vue

@ -1,6 +1,14 @@
<template> <template>
<div class="content-main introduction-main"> <div class="content-main introduction-main">
<div class="new-detial-info" v-html="rawHtml" />
<div v-if="detailData" class="detail-info new-detial-info">
<h2 class="detail-title">{{ detailData.overTitle }}</h2>
<div style="display: flex; justify-content: center; align-items: center; margin-bottom: 20px;">
<p>来源{{ detailData.source ? detailData.source :'-' }}</p>
<p style="margin:0 10px;">作者{{ detailData.author? detailData.author :'-' }}</p>
<p>责编{{ detailData.editor ? detailData.editor : '-' }}</p>
</div>
<div class="detail-content" v-html="detailData.introHtml" />
</div>
</div> </div>
</template> </template>
@ -10,7 +18,8 @@ export default {
name: 'ImgTxtDetail', name: 'ImgTxtDetail',
data() { data() {
return { return {
rawHtml: ''
rawHtml: '',
detailData: {}
} }
}, },
created() { created() {
@ -41,9 +50,9 @@ export default {
FetchInitQueryTopicContext(params).then(res => { FetchInitQueryTopicContext(params).then(res => {
console.log(res) console.log(res)
if (res && res.content.length > 0) { if (res && res.content.length > 0) {
this.rawHtml = res.content[0].introHtml
this.detailData = res.content[0]
} else { } else {
this.rawHtml = '暂无数据'
this.detailData = {}
} }
}).catch(() => { }).catch(() => {
this.$message.error('接口错误') this.$message.error('接口错误')
@ -55,5 +64,26 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "~@/assets/styles/index.scss"; @import "~@/assets/styles/index.scss";
.detail-info{
.detail-title{
font-size: 32px;
font-family: Source Han Sans CN-Regular, Source Han Sans CN;
font-weight: 400;
color: #333333;
line-height: 100px;
text-align: center;
}
.detail-content{
::v-deep p{
span{
display: block !important;
text-indent:2em !important;
}
img{
display: block;
margin: 10px auto;
}
}
}
}
</style> </style>
Loading…
Cancel
Save