From 93768186ca58acd0fc0b6963d0e017979c087631 Mon Sep 17 00:00:00 2001
From: inleft <inleft@qq.com>
Date: Tue, 23 Aug 2022 02:09:58 +0800
Subject: [PATCH] 上下篇日志提示加入

---
 src/components/common/OwO.vue              |   10 +-
 src/components/group/MyMessage.vue         |    3 
 src/components/mini/mdDetail.vue           |  187 +++++++++++++++++-----------------------------
 src/components/mini/box-new-article.vue    |   15 ++-
 src/components/group/articleListScorll.vue |    2 
 5 files changed, 85 insertions(+), 132 deletions(-)

diff --git a/src/components/common/OwO.vue b/src/components/common/OwO.vue
index 794a3e5..08e7f24 100644
--- a/src/components/common/OwO.vue
+++ b/src/components/common/OwO.vue
@@ -5,7 +5,7 @@
 				class="OwO-textarea" />
 		</a-form-item>
 		<span class="myTip fadeIn" v-if="showTip">现在你可以发送表情啦</span>
-		<div ref="container" class="OwO fadeIn" v-show="init || visitorContent.length>0"></div>
+		<div ref="container" class="OwO fadeIn" v-show="init"></div>
 	</div>
 </template>
 
@@ -28,20 +28,20 @@
 		watch: {
 			visitorContent: function(newValue, oldValue) {
 				if (newValue.length > 0) {
-					this.init = true;
-					this.initOwO();
-					if (!this.showTip) {
+					if (!this.init) {
 						this.showTip = true;
 						setTimeout(() => {
 							this.showTip = false;
 						}, 5000);
 					}
+					this.init = true;
+					this.initOwO();
 				}
 				this.$emit("update:content", newValue)
 			},
 		},
 		methods: {
-			
+
 			initOwO() {
 				var OwO_demo = new OwO({
 					logo: 'OωO表情',
diff --git a/src/components/group/MyMessage.vue b/src/components/group/MyMessage.vue
index 291e9fe..6efb3a3 100644
--- a/src/components/group/MyMessage.vue
+++ b/src/components/group/MyMessage.vue
@@ -169,8 +169,7 @@
 
 		img {
 			margin-bottom: 0.2rem;
-			min-height: 5rem;
-			height: 2em;
+			height: 2rem;
 		}
 	}
 </style>
diff --git a/src/components/group/articleListScorll.vue b/src/components/group/articleListScorll.vue
index 03308db..10a9364 100644
--- a/src/components/group/articleListScorll.vue
+++ b/src/components/group/articleListScorll.vue
@@ -6,7 +6,7 @@
 			</div>
 
 			<div v-for="(temp,index) in data">
-				<newArticle v-bind="temp" :index="index"></newArticle>
+				<newArticle v-bind="temp" :index="index" :typeId="typeId"></newArticle>
 				<!-- <box5 v-bind="temp"></box5> -->
 			</div>
 
diff --git a/src/components/mini/box-new-article.vue b/src/components/mini/box-new-article.vue
index 640e836..eee3b5c 100644
--- a/src/components/mini/box-new-article.vue
+++ b/src/components/mini/box-new-article.vue
@@ -4,7 +4,7 @@
 			<div class="miniTag" v-if="isTop==1">置顶</div>
 			<div class="post_cover left_radius" v-if="index%2==0">
 
-				<router-link :to="{path:'videoDetail',query:{id:id,articleFileType:articleFileType}}" :title="title"
+				<router-link :to="{path:'videoDetail',query:{id:id,articleFileType:articleFileType,typeId:typeId}}" :title="title"
 					v-if="articleFileType==myConstant.fileTypeVideo">
 					<div class="block left_radius"></div>
 					<img class="post_bg" :src="coverFileURL" :onerror="img404" :alt="title">
@@ -14,7 +14,7 @@
 					<div class="block left_radius"></div>
 					<img class="post_bg" :src="coverFileURL" :onerror="img404" :alt="title">
 				</a> -->
-				<router-link :to="{path:'/mdDetail',query:{id:id,articleFileType:articleFileType}}" :title="title"
+				<router-link :to="{path:'/mdDetail',query:{id:id,articleFileType:articleFileType,typeId:typeId}}" :title="title"
 					v-else>
 					<div class="block left_radius"></div>
 					<img class="post_bg" :src="coverFileURL" :onerror="img404" :alt="title">
@@ -22,7 +22,7 @@
 			</div>
 
 			<div class="post_cover right_radius" v-else>
-				<router-link :to="{path:'videoDetail',query:{id:id,articleFileType:articleFileType}}" :title="title"
+				<router-link :to="{path:'videoDetail',query:{id:id,articleFileType:articleFileType,typeId:typeId}}" :title="title"
 					v-if="articleFileType==myConstant.fileTypeVideo">
 					<div class="block left_radius"></div>
 					<img class="post_bg" :src="coverFileURL" :onerror="img404" :alt="title">
@@ -32,7 +32,7 @@
 					<div class="block left_radius"></div>
 					<img class="post_bg" :src="coverFileURL" :onerror="img404" :alt="title">
 				</a> -->
-				<router-link :to="{path:'/mdDetail',query:{id:id,articleFileType:articleFileType}}" :title="title"
+				<router-link :to="{path:'/mdDetail',query:{id:id,articleFileType:articleFileType,typeId:typeId}}" :title="title"
 					v-else>
 					<div class="block right_radius"></div>
 					<img class="post_bg" :src="coverFileURL" :onerror="img404" :alt="title">
@@ -41,7 +41,7 @@
 
 			<div class="recent-post-info">
 
-				<router-link :to="{path:'/videoDetail',query:{id:id,articleFileType:articleFileType}}"
+				<router-link :to="{path:'/videoDetail',query:{id:id,articleFileType:articleFileType,typeId:typeId}}"
 					class="article-title" v-if="articleFileType==myConstant.fileTypeVideo">
 					<a-icon type="lock" style="color:rgba(0,0,0,.25)" v-if="authStatus==3" />
 					<a-icon type="stop" style="color:rgba(0,0,0,.25)" v-if="authStatus==2" />
@@ -49,7 +49,7 @@
 					<a-badge :count="1" dot v-if="isAnyUpdate==1" title="最近有更新"></a-badge>
 				</router-link>
 
-				<router-link :to="{path:'/mdDetail',query:{id:id,articleFileType:articleFileType}}"
+				<router-link :to="{path:'/mdDetail',query:{id:id,articleFileType:articleFileType,typeId:typeId}}"
 					class="article-title" v-else>
 					<a-icon type="lock" style="color:rgba(0,0,0,.25)" v-if="authStatus==3" />
 					<a-icon type="stop" style="color:rgba(0,0,0,.25)" v-if="authStatus==2" />
@@ -131,6 +131,9 @@
 			"index": {
 				default: 0,
 			},
+			"typeId": {
+				default: "",
+			},
 			"id": {
 				default: 0,
 			},
diff --git a/src/components/mini/mdDetail.vue b/src/components/mini/mdDetail.vue
index 5f46771..1fc7e24 100644
--- a/src/components/mini/mdDetail.vue
+++ b/src/components/mini/mdDetail.vue
@@ -76,6 +76,35 @@
 				<a-icon type="folder-open" class="samllPadding" />
 		</div> -->
 
+		<div class="articleInfoMiniData">
+			<div class="myTitleDeal">
+				<a-icon type="left" />
+				<a-tooltip placement="bottomLeft" :title="'上一篇: '+articelMeta.previousRecord.title"
+					v-if="articelMeta.previousRecord !=null">
+					<router-link
+						:to="{path:'/mdDetail',query:{id:articelMeta.previousRecord.id,articleFileType:articleFileType,typeId:typeId}}"
+						class="article-title">
+						{{articelMeta.previousRecord.title}}
+					</router-link>
+				</a-tooltip>
+				<span v-else class="myTip">到顶啦..</span>
+			</div>
+			<div style="display: -webkit-box;">
+				<div class="myTitleDeal">
+					<a-tooltip placement="bottomLeft" :title="'下一篇: '+articelMeta.nextRecord.title"
+						v-if="articelMeta.nextRecord !=null">
+						<router-link
+							:to="{path:'/mdDetail',query:{id:articelMeta.nextRecord.id,articleFileType:articleFileType,typeId:typeId}}"
+							class="article-title">
+							{{articelMeta.nextRecord.title}}
+						</router-link>
+					</a-tooltip>
+					<span v-else class="myTip">到底啦..</span>
+				</div>
+				<a-icon type="right" />
+			</div>
+		</div>
+
 		<div class="articleComment">
 			<comment ref="myComment" :articleId="articleId" :isAllowedComment="isAllowedComment" />
 		</div>
@@ -103,11 +132,12 @@
 		data() {
 			return {
 				myConstant: myConstant,
-				articelMeta: "",
+				articelMeta: '',
 				isAllowedComment: 1,
 				introduce: "",
 				articleId: "",
 				articleFileType: myConstant.fileTypeMarkDown,
+				typeId: null,
 				source: "",
 				showMsg: false,
 				myLock: false,
@@ -126,12 +156,14 @@
 		created() {
 			this.articleId = this.$route.query.id;
 			this.articleFileType = this.$route.query.articleFileType;
+			this.typeId = this.$route.query.typeId;
 		},
 		watch: {
 			'$route'(to, from) {
 				if ("mdDetail" === to.name) {
 					this.articleId = this.$route.query.id;
 					this.articleFileType = this.$route.query.articleFileType;
+					this.typeId = this.$route.query.typeId;
 				}
 			},
 			articleId: function(newValue, oldValue) {
@@ -159,7 +191,9 @@
 
 				queryBlogArticleDetail({
 					id: this.articleId,
-					authWord: this.secret == "" ? null : md5(this.secret)
+					authWord: this.secret == "" ? null : md5(this.secret),
+					typeId: this.typeId,
+					fileType: this.articleFileType
 				}).then((res) => {
 					this.showMsg = true;
 					this.myLock = false;
@@ -199,14 +233,15 @@
 
 					if (res.data.articleFileType == myConstant.fileTypeMarkDown ||
 						res.data.articleFileType == myConstant.fileTypeHtml) {
-
-						this.$axios
-							.get(res.data.articleFileURL)
-							.then((res) => {
-								this.source = res.data;
-							}).catch(()=>[
-								this.$message.error("获取文件好像失败了..",3)
-							])
+						if (res.data.articleFileURL != null && res.data.articleFileURL != '') {
+							this.$axios
+								.get(res.data.articleFileURL)
+								.then((res) => {
+									this.source = res.data;
+								}).catch(() => [
+									this.$message.error("获取文件好像失败了..", 3)
+								])
+						}
 					}
 
 					//获取日志资源文件
@@ -235,6 +270,7 @@
 
 <style lang="less">
 	@import '../../assets/md.less';
+
 
 	.headertop {
 		position: relative;
@@ -307,9 +343,25 @@
 		user-select: none;
 		box-shadow: 8px 8px 18px rgba(0, 0, 0, 0.1), -8px -8px 18px #ffffff;
 		padding: 10px 23px;
+		margin: 20px 0px;
 		display: flex;
 		justify-content: space-between;
 		flex-wrap: wrap;
+
+
+		a {
+			color: black;
+		}
+
+		.myTitleDeal {
+			max-width: 300px;
+			-webkit-line-clamp: 1;
+			text-overflow: ellipsis;
+			overflow: hidden;
+			word-wrap: break-word;
+			white-space: nowrap;
+			word-break: break-all;
+		}
 	}
 
 	.mySecret {
@@ -340,113 +392,12 @@
 			-8px -8px 18px #ffffff;
 	}
 
-	/* #test{
-		padding-left: 25%;
-		padding-right: 25%;
-	} */
-	/* h3 {
-		margin: 40px 0 0;
+
+	@media screen and (max-width:768px) {
+		.articleInfoMiniData {
+			.myTitleDeal {
+				max-width: 120px;
+			}
+		}
 	}
-
-	ul {
-		list-style-type: none;
-		padding: 0;
-	}
-
-	li {
-		display: inline-block;
-		margin: 0 10px;
-	}
-
-	a {
-		color: #42b983;
-	}
-	
-	 */
-
-
-	/* 自己也可以再调整调整 (贡献一版 我们调整的一版样式) */
-	/* .markdown-body {
-		padding: 20px;
-		min-width: 200px;
-		max-width: 900px;
-		font-size: 12px;
-
-		h2 {
-			font-size: 18px;
-			margin: 1em 0 15px;
-			padding-top: 0.8em;
-			padding-bottom: 0.8em;
-		}
-
-		h3 {
-			font-size: 14px;
-			margin: 22px 0 16px;
-		}
-
-		h4 {
-			font-size: 13px;
-			margin: 20px 0 16px;
-		}
-
-		h5 {
-			font-size: 12px;
-			margin: 16px 0 16px;
-			font-weight: 700;
-		}
-
-		p {
-			font-size: 12px;
-			line-height: 24px;
-			color: #666666;
-			margin-top: 0px;
-			margin: 8px 0;
-			margin: 14px 0 14px;
-		}
-
-		pre {
-			background-color: #eee;
-			margin-bottom: 8px;
-			margin-top: 8px;
-			margin: 12px 0 12px;
-		}
-
-		blockquote {
-			margin-bottom: 8px;
-			margin-top: 8px;
-			margin: 14px 0 14px;
-			background-color: #eee;
-			padding: 16px 16px;
-		}
-
-		tr {
-			background-color: #f5f5f5;
-		}
-
-		code {
-			background-color: #eee;
-		}
-
-		ul,
-		ol,
-		li {
-			list-style: unset;
-			font-size: 12px;
-			line-height: 20px;
-			color: #666666;
-			margin-top: 0px;
-			margin: 8px 0;
-		}
-
-		blockquote {
-			border-color: #48b6e2;
-		}
-
-		table {
-			display: table;
-			width: 100%;
-			max-width: 100%;
-			margin-bottom: 20px;
-		}
-	} */
 </style>

--
Gitblit v1.9.1