2 Commits a2eeb22598 ... dc6474686f

Autor SHA1 Mensaje Fecha
  付宇航 dc6474686f Merge branch 'master' of http://192.168.10.18:3000/sooka_shop/sooka_consult_uniapp hace 1 año
  付宇航 cfb1783b07 新增文章详情公共页面(不包含评论) :资讯 法律下乡 惠民通 热门知识 hace 1 año

+ 7 - 0
main.js

@@ -20,6 +20,13 @@ Vue.prototype.loadImgSrc = function(img) {
 	return config.baseIconUrl+img;
 }
 
+Vue.prototype.encodify = function(data){
+	return encodeURIComponent(JSON.stringify(data))
+}
+
+Vue.prototype.decodify = function(data){
+	return JSON.parse(decodeURIComponent(data)) 
+}
 
 //本地上传图片前缀地址
 Vue.prototype.loadImgSrcLocalhost = function(img) {

+ 2 - 11
pages.json

@@ -233,12 +233,12 @@
 			}
 		},
 		{
-			"path": "pages/information/informationDetail/informationDetail",
+			"path": "pages/common/articleDetail/articleDetail",
 			"style": {
 				"usingComponents": {},
 				"navigationBarBackgroundColor": "#07c160",
 				"navigationBarTextStyle": "white",
-				"navigationBarTitleText": "资讯详情"
+				"navigationBarTitleText": "详情"
 			}
 		},
 		{
@@ -494,15 +494,6 @@
 			}
 		},
 		{
-			"path": "pages/highServer/knowledgeDetails/knowledgeDetails",
-			"style": {
-				"usingComponents": {},
-				"navigationBarBackgroundColor": "#07c160",
-				"navigationBarTextStyle": "white",
-				"navigationBarTitleText": "知识库详情"
-			}
-		},
-		{
 			"path": "pages/highServer/knowledge/knowledgeForm",
 			"style": {
 				"usingComponents": {},

+ 0 - 2
pages/asking/asking.vue

@@ -101,7 +101,6 @@ export default {
 					}
 				})
 			}
-			console.log('加工后result',idx,result)
 			return result
 		},
          //获取类型列表
@@ -109,7 +108,6 @@ export default {
             getTypeList(this.queryParams).then(res =>{
                 this.typeList = res.rows
 				this.loopTimes = (this.typeList.length/6).toFixed(0) *1
-				console.log('loopTimes',this.loopTimes)
             })
         },
          //获取热门问题列表

+ 7 - 0
pages/asking/questiondetails.css

@@ -58,6 +58,7 @@
     line-height: 0;
 }
 .wenzhangCont {
+	width: 100%;
     font-size: 34rpx;
     margin: 30rpx 0;
 }
@@ -66,6 +67,12 @@
     height: 320rpx;
     margin: 20rpx auto;
 }
+.wenzhangCont p {
+    width: 100%;
+}
+.wenzhangCont img {
+    width: 100%;
+}
 .pinglunTj {
     width: 100%;
     display: flex;

+ 5 - 3
pages/asking/questiondetails.vue

@@ -17,7 +17,7 @@
         <span class="jf">{{ form.score }}</span>
       </view>
       <view class="wenzhangCont">
-        <view v-html="form.text"></view>
+        <view v-html="form.text" class="rich-text"></view>
         <image :src="loadImgSrcLocalhost(path)" v-for="(path, index2) in form.paths" :key="index2"></image>
       </view>
 
@@ -226,7 +226,7 @@ export default {
   },
 };
 </script>
-<style lang="scss">
+<style lang="scss" scoped>
 @import '@/pages/asking/questiondetails.css';
 
 .collect {
@@ -238,7 +238,9 @@ export default {
 .not-collect {
 
 }
-
+.rich-text {
+	overflow: hidden;
+}
 .effectBix {
   width: 56px;
   height: 56px;

pages/highServer/knowledgeDetails/knowledgeDetails.css → pages/common/articleDetail/articleDetail.css


+ 4 - 9
pages/information/informationDetail/informationDetail.vue

@@ -39,7 +39,6 @@
 </template>
 
 <script>
-import {getServer} from '@/api/information/information.js'
 import {
   getUserInfo
 } from '@/api/me/me.js'
@@ -113,13 +112,9 @@ export default {
   /**
    * 生命周期函数--监听页面加载
    */,
-  onLoad(options) {
-    console.log('options', options)
-    getServer(options).then(res => {
-      let result = res.data
-      // result.textDetails = this.srcExcutedFunc(result.textDetails)
-      this.detailInfo = result
-    })
+  onLoad(option) {
+	  let result = JSON.parse(decodeURIComponent(option.data)) 
+	  this.detailInfo = result
   },
   /**
    * 生命周期函数--监听页面初次渲染完成
@@ -161,7 +156,7 @@ export default {
 };
 </script>
 <style lang="scss">
-@import 'informationDetail.css';
+@import 'articleDetail.css';
 
 .collect {
   .icon-shoucang:before {

+ 0 - 240
pages/highServer/knowledgeDetails/knowledgeDetails.vue

@@ -1,240 +0,0 @@
-<template>
-	<view>
-		<!-- 知识库详情 -->
-		<view class="container">
-			<h1 class="title">{{fromData.titleName}}</h1>
-<!--			<view class="wenzhangLy">-->
-<!--				&lt;!&ndash; 头像昵称 &ndash;&gt;-->
-<!--				<view class="txTime">-->
-<!--          <img-->
-<!--              class="uni-header-image"-->
-<!--              :src="initInfo.headImg == null || initInfo.headImg == '' ? initImgPath : loadImgSrcLocalhost(initInfo.headImg)"-->
-<!--          />-->
-<!--				    <view class="time">-->
-<!--				        <p>{{initInfo.name == null || initInfo.name == '' ? initInfo.wechatName : initInfo.name}}</p>-->
-<!--				        <span>{{ fromData.createTime }}</span>-->
-<!--				    </view>-->
-<!--				</view>-->
-			</view>
-			<view class="wenzhangCont article">
-				<view v-html="fromData.textDetails"></view>
-				<view>
-					<image :src="loadImgSrcLocalhost(fromData.imgUrlList)"></image>
-				</view>
-			</view>
-			<view class="fengexian"></view>
-		</view>
-	</view>
-</template>
-
-<script>
-	import {
-		getDetails
-	} from '@/api/knowledge/knowledge.js';
-	import {
-		getUserInfo
-	} from '@/api/me/me.js'
-	export default {
-		data() {
-			return {
-				parentId: "",
-				fromData: {},
-				content: "",
-				initInfo: {
-					userId: null,
-					scoreNum: 0,
-					wechatName: "微信用户",
-					name: null,
-					headImg: null,
-				},
-			};
-		},
-		methods: {
-			// 获取数据
-			getDetails() {
-				getDetails(this.parentId).then(res => {
-					if (res.code == 200) {
-						this.fromData = res.data
-					}
-				})
-			},
-			getUserInfoByUserId(userId) {
-				getUserInfo(userId).then(res => {
-					this.initInfo = res.data;
-					console.log("this.initInfo", this.initInfo)
-				})
-			},
-		}
-		/**
-		 * 生命周期函数--监听页面加载
-		 */
-		,
-		onLoad(options) {
-			this.parentId = options.id
-			this.getDetails()
-		},
-		/**
-		 * 生命周期函数--监听页面初次渲染完成
-		 */
-		onReady() {
-			this.userId = getApp().globalData.userId
-			this.getUserInfoByUserId(this.userId)
-		},
-		/**
-		 * 生命周期函数--监听页面显示
-		 */
-		onShow() {},
-		/**
-		 * 生命周期函数--监听页面隐藏
-		 */
-		onHide() {},
-		/**
-		 * 生命周期函数--监听页面卸载
-		 */
-		onUnload() {},
-		/**
-		 * 页面相关事件处理函数--监听用户下拉动作
-		 */
-		onPullDownRefresh() {},
-		/**
-		 * 页面上拉触底事件的处理函数
-		 */
-		onReachBottom() {},
-		/**
-		 * 用户点击右上角分享
-		 */
-		onShareAppMessage() {},
-	};
-</script>
-<style lang="scss">
-	@import './knowledgeDetails.css';
-
-	.collect {
-		.icon-shoucang:before {
-			color: red;
-		}
-	}
-
-	.not-collect {}
-
-	.effectBix {
-		width: 56px;
-		height: 56px;
-		border-radius: 50px;
-		font-family: 'Bebas Neue', cursive;
-		background: linear-gradient(45deg, transparent 5%, #FF013C 5%);
-		border: 0;
-		color: #fff;
-		text-align: center;
-		line-height: 56px;
-		outline: transparent;
-		position: absolute;
-		transform: rotate(-30deg);
-		right: 3%;
-		top: -5%;
-	}
-
-	.effectBox,
-	.effectBox::after {
-		width: 56px;
-		height: 56px;
-		border-radius: 50px;
-		font-size: 16px;
-		font-family: 'Bebas Neue', cursive;
-		background: linear-gradient(45deg, transparent 5%, #FF013C 5%);
-		border: 0;
-		color: #fff;
-		opacity: 1;
-		letter-spacing: 3px;
-		text-align: center;
-		line-height: 56px;
-		outline: transparent;
-		position: relative;
-		left: 78%;
-		top: 113%;
-		transform: rotate(-30deg);
-		z-index: 1;
-	}
-
-	.effectBox::after {
-		--slice-0: inset(50% 50% 50% 50%);
-		--slice-1: inset(80% -6px 0 0);
-		--slice-2: inset(50% -6px 30% 0);
-		--slice-3: inset(10% -6px 85% 0);
-		--slice-4: inset(40% -6px 43% 0);
-		--slice-5: inset(80% -6px 5% 0);
-
-		content: 'AVAILABLE NOW';
-		display: block;
-		position: absolute;
-		top: 0;
-		left: 0;
-		right: 0;
-		bottom: 0;
-		background: linear-gradient(45deg, transparent 3%, #00E6F6 3%, #00E6F6 5%, #FF013C 5%);
-		text-shadow: -3px -3px 0px #F8F005, 3px 3px 0px #00E6F6;
-		clip-path: var(--slice-0);
-	}
-
-	.effectBox:hover::after {
-		animation: 1s glitch;
-		animation-timing-function: steps(2, end);
-	}
-
-	@keyframes glitch {
-		0% {
-			clip-path: var(--slice-1);
-			transform: translate(-20px, -10px);
-		}
-
-		10% {
-			clip-path: var(--slice-3);
-			transform: translate(10px, 10px);
-		}
-
-		20% {
-			clip-path: var(--slice-1);
-			transform: translate(-10px, 10px);
-		}
-
-		30% {
-			clip-path: var(--slice-3);
-			transform: translate(0px, 5px);
-		}
-
-		40% {
-			clip-path: var(--slice-2);
-			transform: translate(-5px, 0px);
-		}
-
-		50% {
-			clip-path: var(--slice-3);
-			transform: translate(5px, 0px);
-		}
-
-		60% {
-			clip-path: var(--slice-4);
-			transform: translate(5px, 10px);
-		}
-
-		70% {
-			clip-path: var(--slice-2);
-			transform: translate(-10px, 10px);
-		}
-
-		80% {
-			clip-path: var(--slice-5);
-			transform: translate(20px, -10px);
-		}
-
-		90% {
-			clip-path: var(--slice-1);
-			transform: translate(-10px, 0px);
-		}
-
-		100% {
-			clip-path: var(--slice-1);
-			transform: translate(0);
-		}
-	}
-</style>

+ 20 - 8
pages/index/index.vue

@@ -231,14 +231,16 @@
 		getCarousel
 	} from '@/api/index/index.js';
 	import {
-		governmentListData
+		governmentListData,
+		getServer
 	} from '@/api/information/information.js';
 	import {
 		getShowList
 	} from '@/api/asking/asking.js';
 	import {
 		popularKnowledgeList,
-		knowledgePay
+		knowledgePay,
+		getDetails
 	} from '@/api/knowledge/knowledge.js'
 	export default {
 		data() {
@@ -343,9 +345,13 @@
 			goZcDetail(e) {
 				let id = e.id || ''
 				let type = 10
-				uni.navigateTo({
-					url: `/pages/information/informationDetail/informationDetail?id=${id}&type=${type}`
-				});
+				getServer({
+					id,type
+				}).then(res => {
+					uni.navigateTo({
+					    url: `/pages/common/articleDetail/articleDetail?data=${this.encodify(res.data)}`
+					})
+				})
 			},
 			//封面与轮播图
 			getCovers() {
@@ -541,11 +547,17 @@
 					relevance: "1",
 				}
 				knowledgePay(params).then(res => {
+					// getDetails
 					if (res.code == 200) {
-						uni.navigateTo({
-							url: '/pages/highServer/knowledgeDetails/knowledgeDetails?id=' + item.id,
-						});
+						getDetails(item.id).then(res => {
+							let data = res.data
+							data.urls = data.imgUrlList.split(',')
+							uni.navigateTo({
+								url: `/pages/common/articleDetail/articleDetail?data=${this.encodify(data)}`
+							});
+						})
 					} else {
+						
 						uni.showToast({
 							title: res.msg
 						})

+ 8 - 4
pages/information/fuwu/fuwu.vue

@@ -62,7 +62,7 @@
 </template>
 
 <script>
-import { listWxs ,listWx,likeServer} from '@/api/information/information.js'
+import { listWxs ,listWx,likeServer ,getServer} from '@/api/information/information.js'
 // pages/me.js
 export default {
     data() {
@@ -185,9 +185,13 @@ export default {
 		goDetails(e) {
 			let id = e.id || ''
 			let type = 12
-		    uni.navigateTo({
-		        url: `/pages/information/informationDetail/informationDetail?id=${id}&type=${type}`
-		    });
+		    getServer({
+		    	id,type
+		    }).then(res => {
+		    	uni.navigateTo({
+		    	    url: `/pages/common/articleDetail/articleDetail?data=${this.encodify(res.data)}`
+		    	})
+		    })
 		},
 		// 新增资讯
 		addInfomation(){

+ 0 - 160
pages/information/informationDetail/informationDetail.css

@@ -1,160 +0,0 @@
-/* pages/wenbaxiangqing.wxss */
-.title {
-    font-size: 44rpx;
-    text-align: center;
-    line-height: 70rpx;
-    color: #333;
-    margin: 30rpx 0;
-}
-.wenzhangLy {
-    width: 100%;
-    display: flex;
-    justify-content: space-between;
-    border-bottom: solid 2rpx #e8e8e8;
-    padding: 0 0 14rpx 0;
-}
-.txTime {
-    display: flex;
-    flex-direction: row;
-}
-.txTime image {
-    width: 80rpx;
-    height: 80rpx;
-}
-.time {
-    display: flex;
-    flex-direction: column;
-    padding: 10rpx 0 0 8px;
-}
-.time p {
-    font-size: 28rpx;
-    color: #9c9c9c;
-}
-.time span {
-    font-size: 24rpx;
-    color: #c4c4c4;
-}
-
-.jf {
-    color: #07c160;
-    line-height: 80rpx;
-    font-size: 24rpx;
-}
-.icon-jifen {
-    font-size: 28rpx;
-    color: #07c160;
-    margin: 0 0 0 6rpx;
-}
-.ck {
-    color: #c4c4c4;
-    font-size: 28rpx;
-}
-.icon-pinglun,
-.icon-chakan,
-.ck .icon-shoucang {
-    font-size: 28rpx;
-    margin: 0 6rpx 0 20rpx;
-    color: #c4c4c4;
-    line-height: 0;
-}
-.wenzhangCont {
-    font-size: 34rpx;
-    margin: 30rpx 0;
-}
-.wenzhangCont image {
-    width: 100%;
-    height: 320rpx;
-    margin: 20rpx auto;
-}
-.pinglunTj {
-    width: 100%;
-    display: flex;
-    justify-content: space-between;
-    margin: 30rpx 0;
-}
-.pinglunTitle {
-    font-size: 34rpx;
-    color: #2e2e2e;
-    font-weight: 600;
-}
-.pinglunTitle em {
-    font-size: 34rpx;
-    color: #9b9b9b;
-    font-weight: normal;
-    margin: 0 0 0 10rpx;
-}
-.pinglunList {
-    width: 100%;
-    padding: 0 0 120rpx 0;
-}
-.pinglunList li {
-    margin: 20rpx 0;
-    border-bottom: solid 2rpx #e8e8e8;
-    padding: 0 0 20rpx 0;
-    display: flex;
-    flex-direction: column;
-}
-.plListcont {
-    font-size: 30rpx;
-    color: #696868;
-    margin: 20rpx 0;
-}
-.pinglunList li button {
-    width: 80%;
-    border-radius: 10rpx;
-    background: #07c160;
-    color: #fff;
-    font-size: 28rpx;
-    font-weight: normal;
-    margin: 16rpx auto;
-}
-.fabiaoPl {
-    width: 100%;
-    display: flex;
-    justify-content: space-between;
-    position: fixed;
-    left: 0;
-    bottom: 0;
-    height: 112rpx;
-    background: #e8e8e8;
-    box-shadow: 0rpx 0rpx 16rpx #999;
-}
-.shuRu {
-    width: 72%;
-    display: flex;
-    flex-direction: row;
-    height: 76rpx;
-    background: #e0e0e0;
-    border-radius: 60rpx;
-    margin: 20rpx 0 0 20rpx;
-}
-.shuRu input {
-    line-height: 38px;
-    height: 76rpx;
-    font-size: 30rpx;
-    width: 83%;
-}
-.icon-bianji {
-    font-size: 38rpx;
-    line-height: 76rpx;
-    margin: 0 10rpx 0 20rpx;
-    color: #828181;
-}
-.icon-shoucang {
-    font-size: 50rpx;
-    line-height: 112rpx;
-    color: #828181;
-}
-.fasong {
-    width: 58rpx;
-    height: 58rpx;
-    border-radius: 50rpx;
-    background: #07c160;
-    margin: 26rpx 20rpx 0 10rpx;
-    text-align: center;
-    line-height: 58rpx;
-}
-.icon-fasong {
-    font-size: 40rpx;
-    color: #fff;
-}

+ 8 - 4
pages/information/toGovernmentList/toGovernmentList.vue

@@ -62,7 +62,7 @@
 </template>
 
 <script>
-import { listWxs ,listWx,likeServer} from '@/api/information/information.js'
+import { listWxs ,listWx,likeServer ,getServer} from '@/api/information/information.js'
 // pages/me.js
 export default {
     data() {
@@ -180,9 +180,13 @@ export default {
 		goDetails(e) {
 			let id = e.id || ''
 			let type = 10
-		    uni.navigateTo({
-		        url: `/pages/information/informationDetail/informationDetail?id=${id}&type=${type}`
-		    });
+			getServer({
+				id,type
+			}).then(res => {
+				uni.navigateTo({
+				    url: `/pages/common/articleDetail/articleDetail?data=${this.encodify(res.data)}`
+				})
+			})
 		},
 		// 新增资讯
 		addInfomation(){

+ 8 - 4
pages/information/toLegal/toLegal.vue

@@ -60,7 +60,7 @@
 </template>
 
 <script>
-import { listWxs ,listWx,likeServer} from '@/api/information/information.js'
+import { listWxs ,listWx,likeServer ,getServer} from '@/api/information/information.js'
 // pages/me.js
 export default {
     data() {
@@ -182,9 +182,13 @@ export default {
 		goDetails(e) {
 			let id = e.id || ''
 			let type = 11
-		    uni.navigateTo({
-		        url: `/pages/information/informationDetail/informationDetail?id=${id}&type=${type}`
-		    });
+		    getServer({
+		    	id,type
+		    }).then(res => {
+		    	uni.navigateTo({
+		    	    url: `/pages/common/articleDetail/articleDetail?data=${this.encodify(res.data)}`
+		    	})
+		    })
 		},
 		// 新增资讯
 		addInfomation(){

+ 3 - 1
pages/quotations/quotations.vue

@@ -179,7 +179,9 @@ export default {
 .container {
   backgroud-color: #f5f5f5;
 }
-
+::v-deep .uni-grid{
+	justify-content: center;
+}
 .grid-item-box {
   flex: 1;
 // position: relative;