fix: 修复文章分享功能

This commit is contained in:
小莫唐尼 2024-10-22 16:30:30 +08:00
parent 26ce84b950
commit 58f1e7f131

View File

@ -81,7 +81,7 @@
:loading-img="markdownConfig.loadingGif" :scroll-table="true" :selectable="true"
:tag-style="markdownConfig.tagStyle" :container-style="markdownConfig.containStyle"
:content="result.content.raw" :markdown="true" :showLineNumber="true" :showLanguageName="true"
:copyByLongPress="true"/>
:copyByLongPress="true" />
<tm-more v-if="showValidVisitMore" :disabled="true" :maxHeight="1" :isRemovBar="true"
@click="showValidVisitMorePop()">
<view class="text-size-n pa-24">
@ -215,26 +215,28 @@
</template>
<script>
import MarkdownConfig from '@/common/markdown/markdown.config.js';
import MarkdownConfig from '@/common/markdown/markdown.config.js';
import tmSkeleton from '@/tm-vuetify/components/tm-skeleton/tm-skeleton.vue';
import tmPoup from '@/tm-vuetify/components/tm-poup/tm-poup.vue';
import tmFlotbutton from '@/tm-vuetify/components/tm-flotbutton/tm-flotbutton.vue';
import tmButton from '@/tm-vuetify/components/tm-button/tm-button.vue';
import tmEmpty from '@/tm-vuetify/components/tm-empty/tm-empty.vue';
import tmDialog from '@/tm-vuetify/components/tm-dialog/tm-dialog.vue';
import tmMore from '@/tm-vuetify/components/tm-more/tm-more.vue';
import tmSkeleton from '@/tm-vuetify/components/tm-skeleton/tm-skeleton.vue';
import tmPoup from '@/tm-vuetify/components/tm-poup/tm-poup.vue';
import tmFlotbutton from '@/tm-vuetify/components/tm-flotbutton/tm-flotbutton.vue';
import tmButton from '@/tm-vuetify/components/tm-button/tm-button.vue';
import tmEmpty from '@/tm-vuetify/components/tm-empty/tm-empty.vue';
import tmDialog from '@/tm-vuetify/components/tm-dialog/tm-dialog.vue';
import tmMore from '@/tm-vuetify/components/tm-more/tm-more.vue';
import mpHtml from '@/components/mp-html/components/mp-html/mp-html.vue';
import commentList from '@/components/comment-list/comment-list.vue';
import commentItem from '@/components/comment-item/comment-item.vue';
import commentModal from '@/components/comment-modal/comment-modal.vue';
import mpHtml from '@/components/mp-html/components/mp-html/mp-html.vue';
import commentList from '@/components/comment-list/comment-list.vue';
import commentItem from '@/components/comment-item/comment-item.vue';
import commentModal from '@/components/comment-modal/comment-modal.vue';
import rCanvas from '@/components/r-canvas/r-canvas.vue';
import barrage from '@/components/barrage/barrage.vue';
import {getAppConfigs} from '@/config/index.js'
import rCanvas from '@/components/r-canvas/r-canvas.vue';
import barrage from '@/components/barrage/barrage.vue';
import {
getAppConfigs
} from '@/config/index.js'
export default {
export default {
components: {
tmSkeleton,
tmPoup,
@ -329,7 +331,7 @@ export default {
haloConfigs: {
deep: true,
immediate: true,
handler: function (newVal) {
handler: function(newVal) {
if (!newVal) return;
this.fnHandleSetFlotButtonItems(newVal);
}
@ -344,6 +346,24 @@ export default {
onPullDownRefresh() {
this.fnGetData();
},
onShareAppMessage() {
const cover = this.result.spec.cover ? this.calcUrl(this.result.spec.cover) : ""
return {
path: '/pagesA/article-detail/article-detail?name=' + this.result.metadata.name,
title: this.result.spec.title,
imageUrl: cover
}
},
onShareTimeline() {
const cover = this.result.spec.cover ? this.calcUrl(this.result.spec.cover) : ""
return {
title: this.result.spec.title,
query: {
name: this.result.metadata.name
},
imageUrl: cover
}
},
methods: {
fnGetData() {
this.loading = 'loading';
@ -840,7 +860,7 @@ export default {
// #ifdef MP-WEIXIN
uni.login({
provider: 'weixin',
success: function (loginRes) {
success: function(loginRes) {
try {
// todo openid使code
uni.setStorageSync('openid', loginRes.code)
@ -939,11 +959,11 @@ export default {
}
}
};
};
</script>
<style lang="scss" scoped>
.app-page {
.app-page {
width: 100vw;
min-height: 100vh;
display: flex;
@ -951,9 +971,9 @@ export default {
box-sizing: border-box;
background-color: #fafafd;
padding-bottom: 24rpx;
}
}
.bg-image {
.bg-image {
position: fixed;
left: 0;
top: 0;
@ -962,15 +982,15 @@ export default {
width: 100vw;
height: 100vh;
z-index: 0;
}
}
.loading-wrap {
.loading-wrap {
padding: 0 24rpx;
height: inherit;
background-color: #fff;
}
}
.head {
.head {
display: flex;
flex-direction: column;
align-items: center;
@ -997,8 +1017,7 @@ export default {
font-size: 24rpx;
color: #666;
&-name {
}
&-name {}
&-time {
margin-left: 36rpx;
@ -1065,9 +1084,9 @@ export default {
}
}
}
}
}
.category {
.category {
margin: 0 24rpx;
padding: 24rpx;
background-color: #ffffff;
@ -1092,30 +1111,30 @@ export default {
background-color: #607d8b;
}
}
}
}
.category-tag + .category-tag {
.category-tag+.category-tag {
margin-left: 12rpx;
}
}
.content {
.content {
margin-top: 24rpx;
}
}
.markdown-wrap,
.evan-markdown,
.ad-wrap,
.copyright-wrap,
.comment-wrap {
.markdown-wrap,
.evan-markdown,
.ad-wrap,
.copyright-wrap,
.comment-wrap {
box-shadow: 0rpx 0rpx 24rpx rgba(0, 0, 0, 0.03);
}
}
.markdown-wrap {
.markdown-wrap {
overflow: hidden;
border-radius: 12rpx;
}
}
.copyright-title {
.copyright-title {
position: relative;
box-sizing: border-box;
padding-left: 24rpx;
@ -1131,41 +1150,41 @@ export default {
background-color: rgb(3, 174, 252);
border-radius: 6rpx;
}
}
}
.poup-head {
.poup-head {
border-bottom: 2rpx solid #f5f5f5;
}
}
.poup-body {
.poup-body {
height: 50vh;
}
}
.poup-empty {
.poup-empty {
width: 100%;
height: 40vh;
}
}
.poup-loading-wrap {
.poup-loading-wrap {
width: 100%;
height: 40vh;
.e-loading-icon {
font-size: 80rpx;
}
}
}
.poster-content {
.poster-content {
width: 100%;
min-height: 60vh;
overflow: hidden;
}
}
.copyright-text {
.copyright-text {
line-height: 1.7;
}
}
.poster-loading {
.poster-loading {
width: 100%;
position: absolute;
left: 0;
@ -1174,14 +1193,14 @@ export default {
bottom: 0;
// background-color: rgba(0, 0, 0, 0.1);
z-index: 666;
}
}
.poster-save {
.poster-save {
box-sizing: border-box;
border-top: 2rpx dashed #eee;
}
}
.original-url {
.original-url {
display: flex;
&_left {
@ -1209,5 +1228,5 @@ export default {
text-align: right;
}
}
}
}
</style>