Просмотр исходного кода

修改游玩攻略我的页面

zs 1 год назад
Родитель
Сommit
b298268dc4
99 измененных файлов с 16346 добавлено и 12145 удалено
  1. 27 3
      common/css/font-icon.css
  2. 62 0
      components/swiper/index.vue
  3. 19 4
      config.js
  4. 69 1
      pages.json
  5. 29 3
      pages/home/index.vue
  6. 195 79
      pages/my/index.vue
  7. 343 0
      pagesHome/article/index.vue
  8. 20 0
      pagesIndex/collect/index.vue
  9. 20 0
      pagesIndex/comment/index.vue
  10. 20 0
      pagesIndex/like/index.vue
  11. 20 0
      pagesIndex/login/index.vue
  12. 20 0
      pagesMy/account/index.vue
  13. 20 0
      pagesMy/article/index.vue
  14. 20 0
      pagesMy/coupon/index.vue
  15. 20 0
      pagesMy/opinion/index.vue
  16. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map
  17. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map
  18. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
  19. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/components/swiper/index.js.map
  20. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/components/tabs/index.js.map
  21. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/customer/index.js.map
  22. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/home/index.js.map
  23. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
  24. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/map/index.js.map
  25. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/index.js.map
  26. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pagesHome/article/index.js.map
  27. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pagesIndex/collect/index.js.map
  28. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pagesIndex/comment/index.js.map
  29. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pagesIndex/like/index.js.map
  30. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pagesIndex/login/index.js.map
  31. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/pagesIndex/type/index.js.map
  32. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pagesMy/account/index.js.map
  33. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pagesMy/article/index.js.map
  34. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pagesMy/coupon/index.js.map
  35. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pagesMy/opinion/index.js.map
  36. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-badge/components/uni-badge/uni-badge.js.map
  37. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js.map
  38. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js.map
  39. 1 1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.js.map
  40. 20 1
      unpackage/dist/dev/mp-weixin/app.json
  41. 21 3
      unpackage/dist/dev/mp-weixin/common/main.wxss
  42. 2 2
      unpackage/dist/dev/mp-weixin/common/runtime.js
  43. 11833 11860
      unpackage/dist/dev/mp-weixin/common/vendor.js
  44. 222 0
      unpackage/dist/dev/mp-weixin/components/swiper/index.js
  45. 4 0
      unpackage/dist/dev/mp-weixin/components/swiper/index.json
  46. 1 0
      unpackage/dist/dev/mp-weixin/components/swiper/index.wxml
  47. 14 0
      unpackage/dist/dev/mp-weixin/components/swiper/index.wxss
  48. 14 14
      unpackage/dist/dev/mp-weixin/components/tabs/index.js
  49. 69 35
      unpackage/dist/dev/mp-weixin/pages/home/index.js
  50. 1 1
      unpackage/dist/dev/mp-weixin/pages/home/index.wxml
  51. 28 25
      unpackage/dist/dev/mp-weixin/pages/home/index.wxss
  52. 103 7
      unpackage/dist/dev/mp-weixin/pages/my/index.js
  53. 1 1
      unpackage/dist/dev/mp-weixin/pages/my/index.wxml
  54. 59 32
      unpackage/dist/dev/mp-weixin/pages/my/index.wxss
  55. 478 0
      unpackage/dist/dev/mp-weixin/pagesHome/article/index.js
  56. 7 0
      unpackage/dist/dev/mp-weixin/pagesHome/article/index.json
  57. 1 0
      unpackage/dist/dev/mp-weixin/pagesHome/article/index.wxml
  58. 91 0
      unpackage/dist/dev/mp-weixin/pagesHome/article/index.wxss
  59. 190 0
      unpackage/dist/dev/mp-weixin/pagesIndex/collect/index.js
  60. 5 0
      unpackage/dist/dev/mp-weixin/pagesIndex/collect/index.json
  61. 1 0
      unpackage/dist/dev/mp-weixin/pagesIndex/collect/index.wxml
  62. 3 0
      unpackage/dist/dev/mp-weixin/pagesIndex/collect/index.wxss
  63. 190 0
      unpackage/dist/dev/mp-weixin/pagesIndex/comment/index.js
  64. 5 0
      unpackage/dist/dev/mp-weixin/pagesIndex/comment/index.json
  65. 1 0
      unpackage/dist/dev/mp-weixin/pagesIndex/comment/index.wxml
  66. 3 0
      unpackage/dist/dev/mp-weixin/pagesIndex/comment/index.wxss
  67. 190 0
      unpackage/dist/dev/mp-weixin/pagesIndex/like/index.js
  68. 5 0
      unpackage/dist/dev/mp-weixin/pagesIndex/like/index.json
  69. 1 0
      unpackage/dist/dev/mp-weixin/pagesIndex/like/index.wxml
  70. 3 0
      unpackage/dist/dev/mp-weixin/pagesIndex/like/index.wxss
  71. 190 0
      unpackage/dist/dev/mp-weixin/pagesIndex/login/index.js
  72. 4 0
      unpackage/dist/dev/mp-weixin/pagesIndex/login/index.json
  73. 1 0
      unpackage/dist/dev/mp-weixin/pagesIndex/login/index.wxml
  74. 3 0
      unpackage/dist/dev/mp-weixin/pagesIndex/login/index.wxss
  75. 16 16
      unpackage/dist/dev/mp-weixin/pagesIndex/type/index.js
  76. 1 0
      unpackage/dist/dev/mp-weixin/pagesIndex/type/index.json
  77. 190 0
      unpackage/dist/dev/mp-weixin/pagesMy/account/index.js
  78. 4 0
      unpackage/dist/dev/mp-weixin/pagesMy/account/index.json
  79. 1 0
      unpackage/dist/dev/mp-weixin/pagesMy/account/index.wxml
  80. 3 0
      unpackage/dist/dev/mp-weixin/pagesMy/account/index.wxss
  81. 190 0
      unpackage/dist/dev/mp-weixin/pagesMy/article/index.js
  82. 4 0
      unpackage/dist/dev/mp-weixin/pagesMy/article/index.json
  83. 1 0
      unpackage/dist/dev/mp-weixin/pagesMy/article/index.wxml
  84. 3 0
      unpackage/dist/dev/mp-weixin/pagesMy/article/index.wxss
  85. 190 0
      unpackage/dist/dev/mp-weixin/pagesMy/coupon/index.js
  86. 4 0
      unpackage/dist/dev/mp-weixin/pagesMy/coupon/index.json
  87. 1 0
      unpackage/dist/dev/mp-weixin/pagesMy/coupon/index.wxml
  88. 3 0
      unpackage/dist/dev/mp-weixin/pagesMy/coupon/index.wxss
  89. 190 0
      unpackage/dist/dev/mp-weixin/pagesMy/opinion/index.js
  90. 4 0
      unpackage/dist/dev/mp-weixin/pagesMy/opinion/index.json
  91. 1 0
      unpackage/dist/dev/mp-weixin/pagesMy/opinion/index.wxml
  92. 3 0
      unpackage/dist/dev/mp-weixin/pagesMy/opinion/index.wxss
  93. 14 14
      unpackage/dist/dev/mp-weixin/uni_modules/uni-badge/components/uni-badge/uni-badge.js
  94. 682 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js
  95. 6 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.json
  96. 1 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.wxml
  97. 112 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.wxss
  98. 15 15
      unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js
  99. 15 15
      unpackage/dist/dev/mp-weixin/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.js

+ 27 - 3
common/css/font-icon.css

@@ -1,8 +1,8 @@
 @font-face {
   font-family: "iconfont"; /* Project id 4241853 */
-  src: url('//at.alicdn.com/t/c/font_4241853_gtrudh8zn99.woff2?t=1694160999420') format('woff2'),
-       url('//at.alicdn.com/t/c/font_4241853_gtrudh8zn99.woff?t=1694160999420') format('woff'),
-       url('//at.alicdn.com/t/c/font_4241853_gtrudh8zn99.ttf?t=1694160999420') format('truetype');
+  src: url('//at.alicdn.com/t/c/font_4241853_oq7b2fa08a.woff2?t=1694413236701') format('woff2'),
+       url('//at.alicdn.com/t/c/font_4241853_oq7b2fa08a.woff?t=1694413236701') format('woff'),
+       url('//at.alicdn.com/t/c/font_4241853_oq7b2fa08a.ttf?t=1694413236701') format('truetype');
 }
 
 .iconfont {
@@ -13,6 +13,30 @@
   -moz-osx-font-smoothing: grayscale;
 }
 
+.icon-shoucang:before {
+  content: "\e86d";
+}
+
+.icon-shoucang1:before {
+  content: "\e8b9";
+}
+
+.icon-fabu:before {
+  content: "\e65d";
+}
+
+.icon-7yijianfankui:before {
+  content: "\e608";
+}
+
+.icon-zhanghaoshezhi:before {
+  content: "\e610";
+}
+
+.icon-youhuijuan:before {
+  content: "\e60b";
+}
+
 .icon-weibiaoti2fuzhi04:before {
   content: "\e621";
 }

+ 62 - 0
components/swiper/index.vue

@@ -0,0 +1,62 @@
+<template>
+	<swiper class="swiper" @change="viewChange" :autoplay="true" circular :indicator-dots="true"
+		indicator-color="#F5F5F5" indicator-active-color="#ffffff" v-if="imgsList.length"
+		:style="[{ height: swiperHeight + 'px' }]">
+		<swiper-item v-for="item in imgsList" :key="item.id">
+			<view class="swiper-item uni-bg-red">
+				<image :src="item.url" mode="widthFix" class="img" @load="loadImg"></image>
+			</view>
+		</swiper-item>
+	</swiper>
+</template>
+
+<script>
+	export default {
+		name: 'swiperImg',
+		props: {
+			imgsList: Array,
+		},
+		data() {
+			return {
+				swiperHeight: 0,
+				current: 0,
+			};
+		},
+		methods: {
+			loadImg() {
+				this.getCurrentSwiperHeight('.img');
+			},
+			// 轮播切换
+			viewChange(e) {
+				this.current = e.target.current;
+				this.getCurrentSwiperHeight('.img');
+			},
+			// 动态获取内容高度
+			getCurrentSwiperHeight(element) {
+				let query = uni.createSelectorQuery().in(this);
+				query.selectAll(element).boundingClientRect();
+				query.exec((res) => {
+					// 切换到其他页面swiper的change事件仍会触发,这时获取的高度会是0,会导致回到使用swiper组件的页面不显示了
+					if (this.imgsList.length && res[0][this.current].height) {
+						this.swiperHeight = res[0][this.current].height;
+					}
+				});
+			},
+		},
+	};
+</script>
+
+<style lang="scss" scoped>
+	.swiper {
+		padding: 20rpx;
+		border-radius: 4px;
+
+		.swiper-item {
+			width: 100%;
+
+			image {
+				width: 100%;
+			}
+		}
+	}
+</style>

+ 19 - 4
config.js

@@ -40,10 +40,25 @@ export default {
 		}
 	],
 	menuList: [{
-		icon: "icon-yonghu",
-		title: "账号设置",
-		route: "pagesMy/account/index",
-	}],
+			icon: "icon-fabu",
+			title: "我的作品",
+			route: "pagesMy/article/index",
+		}, {
+			icon: "icon-youhuijuan",
+			title: "我的优惠卷",
+			route: "pagesMy/coupon/index",
+		},
+		{
+			icon: "icon-7yijianfankui",
+			title: "意见反馈",
+			route: "pagesMy/opinion/index",
+		},
+		{
+			icon: "icon-zhanghaoshezhi",
+			title: "账号设置",
+			route: "pagesMy/account/index",
+		}
+	],
 	china: [
 		//全国地址
 		{

+ 69 - 1
pages.json

@@ -35,10 +35,78 @@
 		{
 			"root": "pagesIndex",
 			"pages": [ //分包
+				{
+					"path": "login/index",
+					"style": {
+						"navigationBarTitleText": "登录"
+					}
+				},
 				{
 					"path": "type/index",
 					"style": {
-						"navigationBarTitleText": "分类"
+						"navigationBarTitleText": "分类",
+						"enablePullDownRefresh": true
+					}
+				},
+				{
+					"path": "like/index",
+					"style": {
+						"navigationBarTitleText": "点赞",
+						"enablePullDownRefresh": true
+					}
+				},
+				{
+					"path": "comment/index",
+					"style": {
+						"navigationBarTitleText": "评论",
+						"enablePullDownRefresh": true
+					}
+				},
+				{
+					"path": "collect/index",
+					"style": {
+						"navigationBarTitleText": "收藏",
+						"enablePullDownRefresh": true
+					}
+				}
+			]
+		},
+		{
+			"root": "pagesMy",
+			"pages": [ //分包
+				{
+					"path": "coupon/index",
+					"style": {
+						"navigationBarTitleText": "优惠卷"
+					}
+				},
+				{
+					"path": "article/index",
+					"style": {
+						"navigationBarTitleText": "发布作品"
+					}
+				},
+				{
+					"path": "opinion/index",
+					"style": {
+						"navigationBarTitleText": "意见反馈"
+					}
+				},
+				{
+					"path": "account/index",
+					"style": {
+						"navigationBarTitleText": "账号设置"
+					}
+				}
+			]
+		},
+		{
+			"root": "pagesHome",
+			"pages": [ //分包
+				{
+					"path": "article/index",
+					"style": {
+						"navigationBarTitleText": "文章详情"
 					}
 				}
 			]

+ 29 - 3
pages/home/index.vue

@@ -26,7 +26,19 @@
 				<uni-notice-bar speed='50' showGetMore='true' moreText='更多' @getmore="toMore" show-icon scrollable
 					:text="content" />
 			</view>
-			<view class="four">
+			<view class="four" v-if="advertList.length>0">
+				<swiper class="swiper" circular :indicator-dots="true" indicator-color="#F5F5F5"
+					indicator-active-color="#007AFF" :autoplay="false">
+					<swiper-item class="swiper-item" v-for="(item,index) in advertList" :key="index">
+						<view class="list" v-for="(as,indexs) in item" :key="indexs" @tap="toChange(as)">
+							<image class="image" :src="as.url&&as.url.length>0?as.url[0].url:''" mode="aspectFill">
+							</image>
+							<text class="text">{{ as.name }}</text>
+						</view>
+					</swiper-item>
+				</swiper>
+			</view>
+			<view class="five">
 				<tabs :tabs="tabs" @tabsChange="tabsChange">
 					<view class="tabsList">
 						<scroll-view scroll-y="true" class="scroll-view" @scrolltolower="toPage" @scroll="toScroll">
@@ -80,6 +92,8 @@
 				imgList: [],
 				// 模块
 				moduleList: [],
+				// 广告
+				advertList: [],
 				// 公告内容
 				content: '',
 				tabs: {
@@ -118,6 +132,7 @@
 				let info = {
 					skip: that.skip,
 					limit: that.limit,
+					is_use: '0',
 					status: '1',
 					type: that.tabs.active
 				}
@@ -146,7 +161,9 @@
 			},
 			// 查看详情
 			toInfo(item) {
-				console.log(item)
+				uni.navigateTo({
+					url: `/pagesHome/article/index?id=${item.id||item._id}`
+				})
 			},
 			// 点赞/取消点赞
 			toLike(item) {
@@ -194,6 +211,11 @@
 					})
 					that.$set(that.tabs, `menu`, menu)
 				}
+				// 广告
+				res = await that.$api(`/advert`, 'GET', {
+					is_use: '0'
+				});
+				if (res.errcode == '0') that.$set(that, `advertList`, res.data);
 			},
 			// 选择选项卡
 			tabsChange(e) {
@@ -240,7 +262,7 @@
 	}
 </script>
 
-<style lang="scss">
+<style lang="scss" scoped>
 	.main {
 		.one {
 			padding: 0 0 2vw 0;
@@ -305,6 +327,10 @@
 			}
 
 			.four {
+				padding: 2vw;
+			}
+
+			.five {
 				background-color: var(--footColor);
 
 				.tabsList {

+ 195 - 79
pages/my/index.vue

@@ -1,43 +1,55 @@
 <template>
 	<view class="main">
 		<view class="one">
-			<view v-if="user._id" class="one_1">
-				<view class="left">
+			<view class="one_1">
+				<view v-if="user._id" class="top">
 					<image class="image" :src="user.icon&&item.icon.length>0?item.icon[0].url:'../../static/my.png'"
 						mode="widthFix"></image>
 					<text>{{user.nick_name||'微信用户'}}</text>
 				</view>
-				<view class="right">
-					<text class="text"><text class="iconfont icon-icon_set_up"></text>编辑资料</text>
-				</view>
-			</view>
-			<view v-else class="one_1">
-				<view class="left">
+				<view v-else class="top" @tap="toLogin">
 					<text class="iconfont icon-yonghu"></text>
 					<text>登录/注册</text>
 				</view>
-				<view class="right"></view>
+			</view>
+			<view class="one_2">
+				<view class="bottom">
+					<view class="list" v-for="(item,index) in list" :key="index" @tap="toRoute(item)">
+						<text>{{item.num}}</text>
+						<text>{{item.title}}</text>
+					</view>
+				</view>
 			</view>
 		</view>
-		<view class="bottom">
-			<view class="two">
-				<view class="two_1">
-					<view class="left">我的订单</view>
-					<view class="right" @tap="toCommon(`pagesMy/order/index`)">查看全部订单 <text
-							class="iconfont icon-dayuhao"></text></view>
+		<view class="two">
+			<view class="two_1">
+				<view class="left">我的订单</view>
+				<view class="right" @tap="toCommon(`pagesMy/order/index`)">查看全部订单 <text
+						class="iconfont icon-dayuhao"></text></view>
+			</view>
+			<view class="two_2">
+				<view class="list" v-for="(item,index) in orderList" :key="index" @tap="toRoute(item)">
+					<uni-badge :text="item.num" absolute="rightTop" size="normal">
+						<view class="icon">
+							<text class="iconfont" :class="[item.icon]"></text>
+						</view>
+						<text class="title">{{item.title}}</text>
+					</uni-badge>
 				</view>
-				<view class="two_2">
-					<view class="list" v-for="(item,index) in orderList" :key="index" @tap="toRoute(item)">
-						<uni-badge :text="item.num" absolute="rightTop" size="normal">
-							<view class="icon">
-								<text class="iconfont" :class="[item.icon]"></text>
-							</view>
-							<text class="title">{{item.title}}</text>
-						</uni-badge>
+			</view>
+		</view>
+		<view class="thr">
+			<view class="list" v-for="(item, index) in menuList" :key="index" @click="toCommon(item.route)">
+				<view class="left">
+					<view class="icon">
+						<text class="iconfont" :class="[item.icon]"></text>
 					</view>
+					<text class="title">{{item.title}}</text>
+				</view>
+				<view class="right">
+					<text class="iconfont icon-dayuhao"></text>
 				</view>
 			</view>
-			<view class="thr">111111111</view>
 		</view>
 	</view>
 </template>
@@ -47,8 +59,27 @@
 		data() {
 			return {
 				user: {},
+				// 获赞数
+				list: [{
+					title: "点赞",
+					route: '/pagesIndex/like/index',
+					type: '0',
+					num: 0
+				}, {
+					title: "评论",
+					route: '/pagesIndex/comment/index',
+					type: '2',
+					num: 0
+				}, {
+					title: "收藏",
+					route: '/pagesIndex/collect/index',
+					type: '1',
+					num: 0
+				}],
 				// 订单图标菜单
-				orderList: []
+				orderList: [],
+				// 菜单
+				menuList: []
 			}
 		},
 		onLoad: async function() {
@@ -77,11 +108,63 @@
 			// 查询
 			async search() {
 				const that = this;
+				
+			},
+			// 登录或注册
+			async toLogin() {
+				const that = this;
+				console.log('登录');
+			},
+			// 点赞或收藏
+			toLike(item) {
+				const that = this;
+				if (that.user && that.user._id) {
+					if (item.type == '2') {
+						uni.navigateTo({
+							url: `/${item.route}`
+						})
+					} else {
+						uni.navigateTo({
+							url: `/${item.route}?type=${item.type}`
+						})
+					}
+				} else {
+					uni.navigateTo({
+						url: `/pagesIndex/login/index`
+					})
+				}
+			},
+			// 订单或维修跳转
+			toRoute(item) {
+				const that = this;
+				if (that.user && that.user._id) {
+					uni.navigateTo({
+						url: `/${item.route}?status=${item.status}`
+					})
+				} else {
+					uni.navigateTo({
+						url: `/pagesIndex/login/index`
+					})
+				}
+			},
+			// 公共跳转
+			toCommon(e) {
+				const that = this;
+				if (that.user && that.user._id) {
+					uni.navigateTo({
+						url: `/${e}`
+					})
+				} else {
+					uni.navigateTo({
+						url: `/pagesIndex/login/index`
+					})
+				}
 			},
 			async searchOther() {
 				const that = this;
 				let config = that.$config;
 				that.$set(that, `orderList`, config.orderList);
+				that.$set(that, `menuList`, config.menuList);
 			}
 		}
 	}
@@ -97,12 +180,12 @@
 
 		.one {
 			background-image: linear-gradient(181.2deg, #FEFEFE 10.5%, #87CEFA 86.8%);
-			height: 40vw;
+			height: 45vw;
 
 			.one_1 {
 				padding: 5vw;
 
-				.left {
+				.top {
 					display: flex;
 					align-items: center;
 					font-size: var(--font20Szie);
@@ -119,85 +202,118 @@
 						padding: 2vw;
 					}
 				}
+			}
 
-				.right {
-					display: flex;
-					align-items: center;
-					justify-content: flex-end;
-					font-size: var(--font12Szie);
+			.one_2 {
+				padding: 5vw;
 
-					.text {
-						border: 1px solid var(--f85Color);
-						border-radius: 15px;
-						padding: 1vw 2vw;
-						box-shadow: 3px 3px 10px var(--f85Color);
+				.bottom {
+					display: flex;
+					justify-content: space-around;
 
-						text:first-child {
-							padding: 0 1vw 0 0;
-						}
+					.list {
+						display: flex;
+						flex-direction: column;
+						align-items: center;
 					}
 				}
 			}
 		}
 
-		.bottom {
-			position: fixed;
-			top: 30vw;
-			left: 0;
-			right: 0;
+		.two {
+			display: flex;
+			flex-direction: column;
+			padding: 2vw;
+			margin: 2vw;
+			border-radius: 10px;
+			background-color: var(--mainColor);
 
-			.two {
+			.two_1 {
 				display: flex;
-				flex-direction: column;
+				justify-content: space-between;
 				padding: 2vw;
-				margin: 2vw 0;
-				border-radius: 20px;
-				background-color: var(--mainColor);
+				border-bottom: 1px solid var(--f9Color);
+
+				.left {
+					font-weight: 600;
+					font-size: var(--font14Size);
+				}
+
+				.right {
+					display: flex;
+					align-items: center;
+					font-size: var(--font12Size);
+					color: var(--f99Color);
+				}
+			}
+
+			.two_2 {
+				display: flex;
+				justify-content: space-between;
+				padding: 3vw 4vw;
 
-				.two_1 {
+				.list {
 					display: flex;
-					justify-content: space-between;
-					padding: 2vw;
-					border-bottom: 1px solid var(--f9Color);
+					flex-direction: column;
+					align-items: center;
+					justify-content: center;
+					text-align: center;
 
-					.left {
-						font-weight: 600;
-						font-size: var(--font14Size);
+					.icon {
+						.iconfont {
+							font-size: 25px;
+						}
 					}
 
-					.right {
-						display: flex;
-						align-items: center;
+					.title {
+						display: inline-block;
+						margin: 1vw 0 0 0;
 						font-size: var(--font12Size);
-						color: var(--f99Color);
 					}
 				}
+			}
+		}
 
-				.two_2 {
+		.thr {
+			display: flex;
+			flex-direction: column;
+			padding: 2vw;
+			margin: 0 2vw;
+			border-radius: 10px;
+			background-color: var(--mainColor);
+
+			.list {
+				display: flex;
+				justify-content: space-between;
+				padding: 2vw;
+				border-bottom: 1px solid var(--f9Color);
+
+				.left {
 					display: flex;
-					justify-content: space-between;
-					padding: 3vw 4vw;
+					align-items: center;
+					font-size: var(--font12Size);
 
-					.list {
-						display: flex;
-						flex-direction: column;
-						align-items: center;
-						justify-content: center;
-						text-align: center;
+					.icon {
+						padding: 0 1vw 0 0;
 
-						.icon {
-							.iconfont {
-								font-size: 25px;
-							}
+						.iconfont {
+							color: var(--f3CColor);
+							font-size: var(--font18Szie);
 						}
+					}
 
-						.title {
-							display: inline-block;
-							margin: 1vw 0 0 0;
-							font-size: var(--font12Size);
-						}
+					.title {
+						display: inline-block;
+						font-size: var(--font12Size);
 					}
 				}
+
+				.right {
+					display: flex;
+					align-items: center;
+					font-size: var(--font12Size);
+					color: var(--f99Color);
+				}
 			}
 		}
 	}

+ 343 - 0
pagesHome/article/index.vue

@@ -0,0 +1,343 @@
+<template>
+	<view class="main">
+		<view class="info">
+			<scroll-view scroll-y="true" class="scroll-view">
+				<view class="list-scroll-view">
+					<view class="one">
+						<swiperImg :imgsList='info.file'></swiperImg>
+					</view>
+					<view class="two">
+						<view class="two_1">{{info.title||'暂无标题'}}</view>
+						<view class="two_2">#{{info.zhType||'暂无类型'}}</view>
+						<view class="two_3">
+							<rich-text :nodes="info.content"></rich-text>
+						</view>
+						<view class="two_4">发布时间:{{info.create_time}}</view>
+					</view>
+					<view class="thr">
+						<view class="thr_1">评论 {{total}}</view>
+						<scroll-view scroll-y="true" class="scroll-view" @scrolltolower="toPage" @scroll="toScroll">
+							<view class="list-scroll-view">
+								<view class="thr_2">
+									<view class="list" v-for="(item,index) in list" :key="index" @tap="toBuy(item)">
+										<image class="image"
+											:src="item.user_file&&item.user_file.length>0?item.user_file[0].url:'../../static/my.png'"
+											mode="aspectFill">
+										</image>
+										<view class="other">
+											<view class="name textOver">{{item.user_name||'暂无'}}</view>
+											<view class="content">{{item.content||'暂无'}}</view>
+										</view>
+									</view>
+								</view>
+								<view class="is_bottom" v-if="is_bottom">
+									<text>{{config.bottom_title}}</text>
+								</view>
+							</view>
+						</scroll-view>
+					</view>
+				</view>
+			</scroll-view>
+		</view>
+		<view class="foot">
+			<view class="foot_1">
+				<view class="left">
+					<uni-easyinput confirmType="send" prefixIcon="chatbubble" v-model="content" placeholder="说点什么..."
+						@confirm="toSend">
+					</uni-easyinput>
+				</view>
+				<view class="right">
+					<view class="right_1"><text class="iconfont icon-aixin"></text>{{like}}</view>
+					<view class="right_1"><text class="iconfont icon-shoucang1"></text>{{collect}}</view>
+				</view>
+			</view>
+		</view>
+	</view>
+	</view>
+</template>
+
+<script>
+	import swiperImg from '../../components/swiper/index.vue';
+	export default {
+		components: {
+			swiperImg
+		},
+		data() {
+			return {
+				id: '',
+				config: {},
+				user: {},
+				info: {},
+				// 评论数量
+				list: [],
+				total: 0,
+				skip: 0,
+				limit: 15,
+				page: 0,
+				// 数据是否触底
+				is_bottom: false,
+				scrollTop: 0,
+				// 评论
+				content: '',
+				// 点赞
+				like: 0,
+				// 收藏
+				collect: 0,
+				// 字典表
+				typeList: []
+			}
+		},
+		onLoad: async function(e) {
+			const that = this;
+			that.$set(that, `id`, e && e.id || '');
+			that.searchConfig();
+			that.searchToken();
+			await that.searchOther();
+			await that.search();
+		},
+		methods: {
+			searchConfig() {
+				const that = this;
+				try {
+					const res = uni.getStorageSync('config');
+					if (res) that.$set(that, `config`, res);
+				} catch (e) {
+					uni.showToast({
+						title: err.errmsg,
+						icon: 'error',
+						duration: 2000
+					});
+				}
+			},
+			searchToken() {
+				const that = this;
+				try {
+					const res = uni.getStorageSync('token');
+					if (res) that.$set(that, `user`, res);
+				} catch (e) {
+					uni.showToast({
+						title: err.errmsg,
+						icon: 'error',
+						duration: 2000
+					});
+				}
+			},
+			// 查询
+			async search() {
+				const that = this;
+				if (that.id) {
+					let res;
+					res = await that.$api(`/article/${that.id}`, 'GET', {})
+					if (res.errcode == '0') {
+						res.data.content = res.data.content.replace(/\<img/gi, '<img class="rich-img"');
+						res.data.zhType = that.searchDict(res.data.type, 'type')
+						that.$set(that, `info`, res.data)
+					} else {
+						uni.showToast({
+							title: res.errmsg,
+						});
+					}
+					// 查看评论
+					that.searchComment();
+				}
+			},
+			// 查看评论
+			async searchComment() {
+				const that = this;
+				let res;
+				let info = {
+					skip: that.skip,
+					limit: that.limit,
+					is_use: '0',
+					status: '1',
+				}
+				res = await that.$api(`/comment`, 'GET', {
+					...info,
+				});
+				if (res.errcode == '0') {
+					let list = [...that.list, ...res.data];
+					that.$set(that, `list`, list);
+					that.$set(that, `total`, res.total)
+				} else {
+					uni.showToast({
+						title: res.errmsg,
+						icon: 'none'
+					})
+				}
+			},
+			// 查询字典表
+			searchDict(e, model) {
+				const that = this;
+				let data
+				if (model == 'type') {
+					data = that.typeList.find((i) => i.value == e);
+					if (data) return data.label
+					else return '暂无'
+				}
+			},
+			// 发送
+			async toSend(item) {
+				console.log(item);
+			},
+			// 分页
+			toPage(e) {
+				const that = this;
+				let list = that.list;
+				let limit = that.limit;
+				if (that.total > list.length) {
+					uni.showLoading({
+						title: '加载中',
+						mask: true
+					})
+					let page = that.page + 1;
+					that.$set(that, `page`, page)
+					let skip = page * limit;
+					that.$set(that, `skip`, skip)
+					that.searchComment();
+					uni.hideLoading();
+				} else that.$set(that, `is_bottom`, true)
+			},
+			// 触底
+			toScroll(e) {
+				const that = this;
+				let up = that.scrollTop;
+				that.$set(that, `scrollTop`, e.detail.scrollTop);
+				let num = Math.sign(up - e.detail.scrollTop);
+				if (num == 1) that.$set(that, `is_bottom`, false);
+			},
+			// 清空列表
+			clearPage() {
+				const that = this;
+				that.$set(that, `list`, [])
+				that.$set(that, `skip`, 0)
+				that.$set(that, `limit`, 15)
+				that.$set(that, `page`, 0)
+			},
+			// 查询其他信息
+			async searchOther() {
+				const that = this;
+				let res;
+				// 查询类型
+				res = await that.$api(`/dictData`, 'GET', {
+					type: 'home_tabs',
+					is_use: '0',
+				})
+				if (res.errcode == '0') that.$set(that, `typeList`, res.data);
+			},
+		}
+	}
+</script>
+
+<style lang="scss">
+	.main {
+		display: flex;
+		flex-direction: column;
+		box-sizing: border-box;
+		width: 100vw;
+		height: 100vh;
+
+		.info {
+			position: relative;
+			flex-grow: 1;
+
+			.two {
+				padding: 0 2vw;
+
+				.two_1 {
+					font-weight: bold;
+					font-size: var(--font16Size);
+				}
+
+				.two_2 {
+					padding: 1vw;
+					font-size: var(--font14Size);
+					color: var(--f3CColor);
+				}
+
+				.two_3 {
+					.rich-img {
+						width: 100% !important;
+						display: block;
+					}
+				}
+
+				.two_4 {
+					padding: 2vw;
+					font-size: var(--font12Size);
+					color: var(--f99Color);
+					border-bottom: 1px solid var(--f9Color);
+				}
+			}
+
+			.thr {
+
+				.thr_1 {
+					padding: 2vw 4vw;
+					font-weight: 500;
+					font-size: var(--font15Size);
+					border-bottom: 1px solid var(--f9Color);
+				}
+			}
+		}
+
+		.foot {
+			padding: 2vw;
+			background-color: var(--mainColor);
+
+			.foot_1 {
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+
+				.left {
+					.is-input-border {
+						border-radius: 45px;
+					}
+				}
+
+				.right {
+					width: 40%;
+					display: flex;
+					justify-content: space-around;
+					padding: 2vw;
+
+					.right_1 {
+						display: flex;
+						align-items: center;
+						font-size: var(--font18Szie);
+
+						.iconfont {
+							padding: 0 1vw;
+							font-size: 22px;
+						}
+					}
+				}
+			}
+		}
+	}
+
+	.scroll-view {
+		position: absolute;
+		top: 0;
+		left: 0;
+		right: 0;
+		bottom: 0;
+
+		.list-scroll-view {
+			display: flex;
+			flex-direction: column;
+		}
+	}
+
+	.is_bottom {
+		width: 100%;
+		text-align: center;
+
+		text {
+			padding: 2vw 0;
+			display: inline-block;
+			color: var(--f85Color);
+			font-size: var(--font14Size);
+		}
+	}
+</style>

+ 20 - 0
pagesIndex/collect/index.vue

@@ -0,0 +1,20 @@
+<template>
+	<view class="main">
+		系统首页
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {}
+		},
+		methods: {
+
+		}
+	}
+</script>
+
+<style>
+	.main {}
+</style>

+ 20 - 0
pagesIndex/comment/index.vue

@@ -0,0 +1,20 @@
+<template>
+	<view class="main">
+		系统首页
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {}
+		},
+		methods: {
+
+		}
+	}
+</script>
+
+<style>
+	.main {}
+</style>

+ 20 - 0
pagesIndex/like/index.vue

@@ -0,0 +1,20 @@
+<template>
+	<view class="main">
+		系统首页
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {}
+		},
+		methods: {
+
+		}
+	}
+</script>
+
+<style>
+	.main {}
+</style>

+ 20 - 0
pagesIndex/login/index.vue

@@ -0,0 +1,20 @@
+<template>
+	<view class="main">
+		系统首页
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {}
+		},
+		methods: {
+
+		}
+	}
+</script>
+
+<style>
+	.main {}
+</style>

+ 20 - 0
pagesMy/account/index.vue

@@ -0,0 +1,20 @@
+<template>
+	<view class="main">
+		系统首页
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {}
+		},
+		methods: {
+
+		}
+	}
+</script>
+
+<style>
+	.main {}
+</style>

+ 20 - 0
pagesMy/article/index.vue

@@ -0,0 +1,20 @@
+<template>
+	<view class="main">
+		系统首页
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {}
+		},
+		methods: {
+
+		}
+	}
+</script>
+
+<style>
+	.main {}
+</style>

+ 20 - 0
pagesMy/coupon/index.vue

@@ -0,0 +1,20 @@
+<template>
+	<view class="main">
+		系统首页
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {}
+		},
+		methods: {
+
+		}
+	}
+</script>
+
+<style>
+	.main {}
+</style>

+ 20 - 0
pagesMy/opinion/index.vue

@@ -0,0 +1,20 @@
+<template>
+	<view class="main">
+		系统首页
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {}
+		},
+		methods: {
+
+		}
+	}
+</script>
+
+<style>
+	.main {}
+</style>

Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/components/swiper/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/components/tabs/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/customer/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/home/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/map/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pagesHome/article/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pagesIndex/collect/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pagesIndex/comment/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pagesIndex/like/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pagesIndex/login/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/pagesIndex/type/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pagesMy/account/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pagesMy/article/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pagesMy/coupon/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pagesMy/opinion/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-badge/components/uni-badge/uni-badge.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js.map


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.js.map


+ 20 - 1
unpackage/dist/dev/mp-weixin/app.json

@@ -10,7 +10,26 @@
     {
       "root": "pagesIndex",
       "pages": [
-        "type/index"
+        "login/index",
+        "type/index",
+        "like/index",
+        "comment/index",
+        "collect/index"
+      ]
+    },
+    {
+      "root": "pagesMy",
+      "pages": [
+        "coupon/index",
+        "article/index",
+        "opinion/index",
+        "account/index"
+      ]
+    },
+    {
+      "root": "pagesHome",
+      "pages": [
+        "article/index"
       ]
     }
   ],

+ 21 - 3
unpackage/dist/dev/mp-weixin/common/main.wxss

@@ -5,9 +5,9 @@
 /* 水平间距 */
 @font-face {
   font-family: "iconfont"; /* Project id 4241853 */
-  src: url('//at.alicdn.com/t/c/font_4241853_gtrudh8zn99.woff2?t=1694160999420') format('woff2'),
-       url('//at.alicdn.com/t/c/font_4241853_gtrudh8zn99.woff?t=1694160999420') format('woff'),
-       url('//at.alicdn.com/t/c/font_4241853_gtrudh8zn99.ttf?t=1694160999420') format('truetype');
+  src: url('//at.alicdn.com/t/c/font_4241853_oq7b2fa08a.woff2?t=1694413236701') format('woff2'),
+       url('//at.alicdn.com/t/c/font_4241853_oq7b2fa08a.woff?t=1694413236701') format('woff'),
+       url('//at.alicdn.com/t/c/font_4241853_oq7b2fa08a.ttf?t=1694413236701') format('truetype');
 }
 .iconfont {
   font-family: "iconfont" !important;
@@ -16,6 +16,24 @@
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
 }
+.icon-shoucang:before {
+  content: "\e86d";
+}
+.icon-shoucang1:before {
+  content: "\e8b9";
+}
+.icon-fabu:before {
+  content: "\e65d";
+}
+.icon-7yijianfankui:before {
+  content: "\e608";
+}
+.icon-zhanghaoshezhi:before {
+  content: "\e610";
+}
+.icon-youhuijuan:before {
+  content: "\e60b";
+}
 .icon-weibiaoti2fuzhi04:before {
   content: "\e621";
 }

Разница между файлами не показана из-за своего большого размера
+ 2 - 2
unpackage/dist/dev/mp-weixin/common/runtime.js


Разница между файлами не показана из-за своего большого размера
+ 11833 - 11860
unpackage/dist/dev/mp-weixin/common/vendor.js


Разница между файлами не показана из-за своего большого размера
+ 222 - 0
unpackage/dist/dev/mp-weixin/components/swiper/index.js


+ 4 - 0
unpackage/dist/dev/mp-weixin/components/swiper/index.json

@@ -0,0 +1,4 @@
+{
+  "usingComponents": {},
+  "component": true
+}

Разница между файлами не показана из-за своего большого размера
+ 1 - 0
unpackage/dist/dev/mp-weixin/components/swiper/index.wxml


+ 14 - 0
unpackage/dist/dev/mp-weixin/components/swiper/index.wxss

@@ -0,0 +1,14 @@
+@charset "UTF-8";
+/* 水平间距 */
+/* 水平间距 */
+.swiper.data-v-731911b6 {
+  padding: 20rpx;
+  border-radius: 4px;
+}
+.swiper .swiper-item.data-v-731911b6 {
+  width: 100%;
+}
+.swiper .swiper-item image.data-v-731911b6 {
+  width: 100%;
+}
+

Разница между файлами не показана из-за своего большого размера
+ 14 - 14
unpackage/dist/dev/mp-weixin/components/tabs/index.js


Разница между файлами не показана из-за своего большого размера
+ 69 - 35
unpackage/dist/dev/mp-weixin/pages/home/index.js


Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/home/index.wxml


+ 28 - 25
unpackage/dist/dev/mp-weixin/pages/home/index.wxss

@@ -1,17 +1,17 @@
 @charset "UTF-8";
 /* 水平间距 */
 /* 水平间距 */
-.main .one {
+.main .one.data-v-71e217db {
   padding: 0 0 2vw 0;
 }
-.main .one .swiper {
+.main .one .swiper.data-v-71e217db {
   height: 70vw;
 }
-.main .one .swiper .list .image {
+.main .one .swiper .list .image.data-v-71e217db {
   width: 100%;
   height: 100%;
 }
-.main .bottom {
+.main .bottom.data-v-71e217db {
   position: absolute;
   top: 65vw;
   left: 0;
@@ -20,15 +20,15 @@
   border-radius: 20px;
   padding: 2vw 0 0 0;
 }
-.main .bottom .two .swiper {
+.main .bottom .two .swiper.data-v-71e217db {
   height: 50vw;
 }
-.main .bottom .two .swiper .swiper-item {
+.main .bottom .two .swiper .swiper-item.data-v-71e217db {
   display: flex;
   flex-direction: column;
   flex-wrap: wrap;
 }
-.main .bottom .two .swiper .swiper-item .list {
+.main .bottom .two .swiper .swiper-item .list.data-v-71e217db {
   display: flex;
   flex-direction: column;
   justify-content: space-between;
@@ -36,37 +36,40 @@
   width: 20vw;
   padding: 1vw 0 0 0;
 }
-.main .bottom .two .swiper .swiper-item .list .image {
+.main .bottom .two .swiper .swiper-item .list .image.data-v-71e217db {
   width: 14vw;
   height: 14vw;
   border-radius: 14vw;
 }
-.main .bottom .two .swiper .swiper-item .list .text {
+.main .bottom .two .swiper .swiper-item .list .text.data-v-71e217db {
   font-size: var(--font14Size);
   margin-top: 5px;
   color: var(--f85Color);
 }
-.main .bottom .thr {
+.main .bottom .thr.data-v-71e217db {
   padding: 0 2vw;
 }
-.main .bottom .four {
+.main .bottom .four.data-v-71e217db {
+  padding: 2vw;
+}
+.main .bottom .five.data-v-71e217db {
   background-color: var(--footColor);
 }
-.main .bottom .four .tabsList {
+.main .bottom .five .tabsList.data-v-71e217db {
   position: relative;
   width: 100vw;
   height: 80vh;
 }
-.main .bottom .four .tabsList .pubuBox {
+.main .bottom .five .tabsList .pubuBox.data-v-71e217db {
   padding: 2vw;
 }
-.main .bottom .four .tabsList .pubuItem {
+.main .bottom .five .tabsList .pubuItem.data-v-71e217db {
   -webkit-column-count: 2;
           column-count: 2;
   -webkit-column-gap: 2vw;
           column-gap: 2vw;
 }
-.main .bottom .four .tabsList .list {
+.main .bottom .five .tabsList .list.data-v-71e217db {
   box-sizing: border-box;
   border-radius: 2vw;
   overflow: hidden;
@@ -77,13 +80,13 @@
   box-sizing: border-box;
   margin-bottom: 2vw;
 }
-.main .bottom .four .tabsList .list image {
+.main .bottom .five .tabsList .list image.data-v-71e217db {
   width: 100%;
 }
-.main .bottom .four .tabsList .title {
+.main .bottom .five .tabsList .title.data-v-71e217db {
   padding: 2vw;
 }
-.main .bottom .four .tabsList .title .title_1 {
+.main .bottom .five .tabsList .title .title_1.data-v-71e217db {
   font-size: var(--font14Size);
   line-height: 4vw;
   text-overflow: -o-ellipsis-lastline;
@@ -96,36 +99,36 @@
   min-height: 6vw;
   max-height: 20vw;
 }
-.main .bottom .four .tabsList .title .title_2 {
+.main .bottom .five .tabsList .title .title_2.data-v-71e217db {
   display: flex;
   justify-content: space-between;
   font-size: var(--font12Size);
   color: var(--f69Color);
   padding: 1vw 0;
 }
-.main .bottom .four .tabsList .title .title_2 .right {
+.main .bottom .five .tabsList .title .title_2 .right.data-v-71e217db {
   display: flex;
   align-items: center;
 }
-.main .bottom .four .tabsList .title .title_2 .right text:first-child {
+.main .bottom .five .tabsList .title .title_2 .right text.data-v-71e217db:first-child {
   padding: 0 1vw 0 0;
 }
-.scroll-view {
+.scroll-view.data-v-71e217db {
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
 }
-.scroll-view .list-scroll-view {
+.scroll-view .list-scroll-view.data-v-71e217db {
   display: flex;
   flex-direction: column;
 }
-.is_bottom {
+.is_bottom.data-v-71e217db {
   width: 100%;
   text-align: center;
 }
-.is_bottom text {
+.is_bottom text.data-v-71e217db {
   padding: 2vw 0;
   display: inline-block;
   color: var(--f85Color);

+ 103 - 7
unpackage/dist/dev/mp-weixin/pages/my/index.js

@@ -101,7 +101,7 @@ var components
 try {
   components = {
     uniBadge: function () {
-      return __webpack_require__.e(/*! import() | uni_modules/uni-badge/components/uni-badge/uni-badge */ "uni_modules/uni-badge/components/uni-badge/uni-badge").then(__webpack_require__.bind(null, /*! @/uni_modules/uni-badge/components/uni-badge/uni-badge.vue */ 118))
+      return __webpack_require__.e(/*! import() | uni_modules/uni-badge/components/uni-badge/uni-badge */ "uni_modules/uni-badge/components/uni-badge/uni-badge").then(__webpack_require__.bind(null, /*! @/uni_modules/uni-badge/components/uni-badge/uni-badge.vue */ 172))
     },
   }
 } catch (e) {
@@ -220,12 +220,43 @@ var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/r
 //
 //
 //
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
 var _default = {
   data: function data() {
     return {
       user: {},
+      // 获赞数
+      list: [{
+        title: "点赞",
+        route: '/pagesIndex/like/index',
+        type: '0',
+        num: 0
+      }, {
+        title: "评论",
+        route: '/pagesIndex/comment/index',
+        type: '2',
+        num: 0
+      }, {
+        title: "收藏",
+        route: '/pagesIndex/collect/index',
+        type: '1',
+        num: 0
+      }],
       // 订单图标菜单
-      orderList: []
+      orderList: [],
+      // 菜单
+      menuList: []
     };
   },
   onLoad: function () {
@@ -306,24 +337,89 @@ var _default = {
         }, _callee3);
       }))();
     },
-    searchOther: function searchOther() {
+    // 登录或注册
+    toLogin: function toLogin() {
       var _this2 = this;
       return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
-        var that, config;
+        var that;
         return _regenerator.default.wrap(function _callee4$(_context4) {
           while (1) {
             switch (_context4.prev = _context4.next) {
               case 0:
                 that = _this2;
-                config = that.$config;
-                that.$set(that, "orderList", config.orderList);
-              case 3:
+                console.log('登录');
+              case 2:
               case "end":
                 return _context4.stop();
             }
           }
         }, _callee4);
       }))();
+    },
+    // 点赞或收藏
+    toLike: function toLike(item) {
+      var that = this;
+      if (that.user && that.user._id) {
+        if (item.type == '2') {
+          uni.navigateTo({
+            url: "/".concat(item.route)
+          });
+        } else {
+          uni.navigateTo({
+            url: "/".concat(item.route, "?type=").concat(item.type)
+          });
+        }
+      } else {
+        uni.navigateTo({
+          url: "/pagesIndex/login/index"
+        });
+      }
+    },
+    // 订单或维修跳转
+    toRoute: function toRoute(item) {
+      var that = this;
+      if (that.user && that.user._id) {
+        uni.navigateTo({
+          url: "/".concat(item.route, "?status=").concat(item.status)
+        });
+      } else {
+        uni.navigateTo({
+          url: "/pagesIndex/login/index"
+        });
+      }
+    },
+    // 公共跳转
+    toCommon: function toCommon(e) {
+      var that = this;
+      if (that.user && that.user._id) {
+        uni.navigateTo({
+          url: "/".concat(e)
+        });
+      } else {
+        uni.navigateTo({
+          url: "/pagesIndex/login/index"
+        });
+      }
+    },
+    searchOther: function searchOther() {
+      var _this3 = this;
+      return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() {
+        var that, config;
+        return _regenerator.default.wrap(function _callee5$(_context5) {
+          while (1) {
+            switch (_context5.prev = _context5.next) {
+              case 0:
+                that = _this3;
+                config = that.$config;
+                that.$set(that, "orderList", config.orderList);
+                that.$set(that, "menuList", config.menuList);
+              case 4:
+              case "end":
+                return _context5.stop();
+            }
+          }
+        }, _callee5);
+      }))();
     }
   }
 };

Разница между файлами не показана из-за своего большого размера
+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/my/index.wxml


+ 59 - 32
unpackage/dist/dev/mp-weixin/pages/my/index.wxss

@@ -10,89 +10,116 @@
 }
 .main .one {
   background-image: linear-gradient(181.2deg, #FEFEFE 10.5%, #87CEFA 86.8%);
-  height: 40vw;
+  height: 45vw;
 }
 .main .one .one_1 {
   padding: 5vw;
 }
-.main .one .one_1 .left {
+.main .one .one_1 .top {
   display: flex;
   align-items: center;
   font-size: var(--font20Szie);
 }
-.main .one .one_1 .left .image {
+.main .one .one_1 .top .image {
   width: 15vw;
   height: 15vw;
   border-radius: 15vw;
 }
-.main .one .one_1 .left .iconfont {
+.main .one .one_1 .top .iconfont {
   font-size: 40px;
   color: var(--f85Color);
   padding: 2vw;
 }
-.main .one .one_1 .right {
-  display: flex;
-  align-items: center;
-  justify-content: flex-end;
-  font-size: var(--font12Szie);
-}
-.main .one .one_1 .right .text {
-  border: 1px solid var(--f85Color);
-  border-radius: 15px;
-  padding: 1vw 2vw;
-  box-shadow: 3px 3px 10px var(--f85Color);
+.main .one .one_2 {
+  padding: 5vw;
 }
-.main .one .one_1 .right .text text:first-child {
-  padding: 0 1vw 0 0;
+.main .one .one_2 .bottom {
+  display: flex;
+  justify-content: space-around;
 }
-.main .bottom {
-  position: fixed;
-  top: 30vw;
-  left: 0;
-  right: 0;
+.main .one .one_2 .bottom .list {
+  display: flex;
+  flex-direction: column;
+  align-items: center;
 }
-.main .bottom .two {
+.main .two {
   display: flex;
   flex-direction: column;
   padding: 2vw;
-  margin: 2vw 0;
-  border-radius: 20px;
+  margin: 2vw;
+  border-radius: 10px;
   background-color: var(--mainColor);
 }
-.main .bottom .two .two_1 {
+.main .two .two_1 {
   display: flex;
   justify-content: space-between;
   padding: 2vw;
   border-bottom: 1px solid var(--f9Color);
 }
-.main .bottom .two .two_1 .left {
+.main .two .two_1 .left {
   font-weight: 600;
   font-size: var(--font14Size);
 }
-.main .bottom .two .two_1 .right {
+.main .two .two_1 .right {
   display: flex;
   align-items: center;
   font-size: var(--font12Size);
   color: var(--f99Color);
 }
-.main .bottom .two .two_2 {
+.main .two .two_2 {
   display: flex;
   justify-content: space-between;
   padding: 3vw 4vw;
 }
-.main .bottom .two .two_2 .list {
+.main .two .two_2 .list {
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   text-align: center;
 }
-.main .bottom .two .two_2 .list .icon .iconfont {
+.main .two .two_2 .list .icon .iconfont {
   font-size: 25px;
 }
-.main .bottom .two .two_2 .list .title {
+.main .two .two_2 .list .title {
   display: inline-block;
   margin: 1vw 0 0 0;
   font-size: var(--font12Size);
 }
+.main .thr {
+  display: flex;
+  flex-direction: column;
+  padding: 2vw;
+  margin: 0 2vw;
+  border-radius: 10px;
+  background-color: var(--mainColor);
+}
+.main .thr .list {
+  display: flex;
+  justify-content: space-between;
+  padding: 2vw;
+  border-bottom: 1px solid var(--f9Color);
+}
+.main .thr .list .left {
+  display: flex;
+  align-items: center;
+  font-size: var(--font12Size);
+}
+.main .thr .list .left .icon {
+  padding: 0 1vw 0 0;
+}
+.main .thr .list .left .icon .iconfont {
+  color: var(--f3CColor);
+  font-size: var(--font18Szie);
+}
+.main .thr .list .left .title {
+  display: inline-block;
+  font-size: var(--font12Size);
+}
+.main .thr .list .right {
+  display: flex;
+  align-items: center;
+  font-size: var(--font12Size);
+  color: var(--f99Color);
+}
 

Разница между файлами не показана из-за своего большого размера
+ 478 - 0
unpackage/dist/dev/mp-weixin/pagesHome/article/index.js


+ 7 - 0
unpackage/dist/dev/mp-weixin/pagesHome/article/index.json

@@ -0,0 +1,7 @@
+{
+  "navigationBarTitleText": "文章详情",
+  "usingComponents": {
+    "uni-easyinput": "/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput",
+    "swiper-img": "/components/swiper/index"
+  }
+}

Разница между файлами не показана из-за своего большого размера
+ 1 - 0
unpackage/dist/dev/mp-weixin/pagesHome/article/index.wxml


+ 91 - 0
unpackage/dist/dev/mp-weixin/pagesHome/article/index.wxss

@@ -0,0 +1,91 @@
+@charset "UTF-8";
+/* 水平间距 */
+/* 水平间距 */
+.main {
+  display: flex;
+  flex-direction: column;
+  box-sizing: border-box;
+  width: 100vw;
+  height: 100vh;
+}
+.main .info {
+  position: relative;
+  flex-grow: 1;
+}
+.main .info .two {
+  padding: 0 2vw;
+}
+.main .info .two .two_1 {
+  font-weight: bold;
+  font-size: var(--font16Size);
+}
+.main .info .two .two_2 {
+  padding: 1vw;
+  font-size: var(--font14Size);
+  color: var(--f3CColor);
+}
+.main .info .two .two_3 .rich-img {
+  width: 100% !important;
+  display: block;
+}
+.main .info .two .two_4 {
+  padding: 2vw;
+  font-size: var(--font12Size);
+  color: var(--f99Color);
+  border-bottom: 1px solid var(--f9Color);
+}
+.main .info .thr .thr_1 {
+  padding: 2vw 4vw;
+  font-weight: 500;
+  font-size: var(--font15Size);
+  border-bottom: 1px solid var(--f9Color);
+}
+.main .foot {
+  padding: 2vw;
+  background-color: var(--mainColor);
+}
+.main .foot .foot_1 {
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+}
+.main .foot .foot_1 .left .is-input-border {
+  border-radius: 45px;
+}
+.main .foot .foot_1 .right {
+  width: 40%;
+  display: flex;
+  justify-content: space-around;
+  padding: 2vw;
+}
+.main .foot .foot_1 .right .right_1 {
+  display: flex;
+  align-items: center;
+  font-size: var(--font18Szie);
+}
+.main .foot .foot_1 .right .right_1 .iconfont {
+  padding: 0 1vw;
+  font-size: 22px;
+}
+.scroll-view {
+  position: absolute;
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+}
+.scroll-view .list-scroll-view {
+  display: flex;
+  flex-direction: column;
+}
+.is_bottom {
+  width: 100%;
+  text-align: center;
+}
+.is_bottom text {
+  padding: 2vw 0;
+  display: inline-block;
+  color: var(--f85Color);
+  font-size: var(--font14Size);
+}
+

Разница между файлами не показана из-за своего большого размера
+ 190 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/collect/index.js


+ 5 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/collect/index.json

@@ -0,0 +1,5 @@
+{
+  "navigationBarTitleText": "收藏",
+  "enablePullDownRefresh": true,
+  "usingComponents": {}
+}

+ 1 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/collect/index.wxml

@@ -0,0 +1 @@
+<view class="main">系统首页</view>

+ 3 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/collect/index.wxss

@@ -0,0 +1,3 @@
+
+.main {}
+

Разница между файлами не показана из-за своего большого размера
+ 190 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/comment/index.js


+ 5 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/comment/index.json

@@ -0,0 +1,5 @@
+{
+  "navigationBarTitleText": "评论",
+  "enablePullDownRefresh": true,
+  "usingComponents": {}
+}

+ 1 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/comment/index.wxml

@@ -0,0 +1 @@
+<view class="main">系统首页</view>

+ 3 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/comment/index.wxss

@@ -0,0 +1,3 @@
+
+.main {}
+

Разница между файлами не показана из-за своего большого размера
+ 190 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/like/index.js


+ 5 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/like/index.json

@@ -0,0 +1,5 @@
+{
+  "navigationBarTitleText": "点赞",
+  "enablePullDownRefresh": true,
+  "usingComponents": {}
+}

+ 1 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/like/index.wxml

@@ -0,0 +1 @@
+<view class="main">系统首页</view>

+ 3 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/like/index.wxss

@@ -0,0 +1,3 @@
+
+.main {}
+

Разница между файлами не показана из-за своего большого размера
+ 190 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/login/index.js


+ 4 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/login/index.json

@@ -0,0 +1,4 @@
+{
+  "navigationBarTitleText": "登录",
+  "usingComponents": {}
+}

+ 1 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/login/index.wxml

@@ -0,0 +1 @@
+<view class="main">系统首页</view>

+ 3 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/login/index.wxss

@@ -0,0 +1,3 @@
+
+.main {}
+

Разница между файлами не показана из-за своего большого размера
+ 16 - 16
unpackage/dist/dev/mp-weixin/pagesIndex/type/index.js


+ 1 - 0
unpackage/dist/dev/mp-weixin/pagesIndex/type/index.json

@@ -1,4 +1,5 @@
 {
   "navigationBarTitleText": "分类",
+  "enablePullDownRefresh": true,
   "usingComponents": {}
 }

Разница между файлами не показана из-за своего большого размера
+ 190 - 0
unpackage/dist/dev/mp-weixin/pagesMy/account/index.js


+ 4 - 0
unpackage/dist/dev/mp-weixin/pagesMy/account/index.json

@@ -0,0 +1,4 @@
+{
+  "navigationBarTitleText": "账号设置",
+  "usingComponents": {}
+}

+ 1 - 0
unpackage/dist/dev/mp-weixin/pagesMy/account/index.wxml

@@ -0,0 +1 @@
+<view class="main">系统首页</view>

+ 3 - 0
unpackage/dist/dev/mp-weixin/pagesMy/account/index.wxss

@@ -0,0 +1,3 @@
+
+.main {}
+

Разница между файлами не показана из-за своего большого размера
+ 190 - 0
unpackage/dist/dev/mp-weixin/pagesMy/article/index.js


+ 4 - 0
unpackage/dist/dev/mp-weixin/pagesMy/article/index.json

@@ -0,0 +1,4 @@
+{
+  "navigationBarTitleText": "发布作品",
+  "usingComponents": {}
+}

+ 1 - 0
unpackage/dist/dev/mp-weixin/pagesMy/article/index.wxml

@@ -0,0 +1 @@
+<view class="main">系统首页</view>

+ 3 - 0
unpackage/dist/dev/mp-weixin/pagesMy/article/index.wxss

@@ -0,0 +1,3 @@
+
+.main {}
+

Разница между файлами не показана из-за своего большого размера
+ 190 - 0
unpackage/dist/dev/mp-weixin/pagesMy/coupon/index.js


+ 4 - 0
unpackage/dist/dev/mp-weixin/pagesMy/coupon/index.json

@@ -0,0 +1,4 @@
+{
+  "navigationBarTitleText": "优惠卷",
+  "usingComponents": {}
+}

+ 1 - 0
unpackage/dist/dev/mp-weixin/pagesMy/coupon/index.wxml

@@ -0,0 +1 @@
+<view class="main">系统首页</view>

+ 3 - 0
unpackage/dist/dev/mp-weixin/pagesMy/coupon/index.wxss

@@ -0,0 +1,3 @@
+
+.main {}
+

Разница между файлами не показана из-за своего большого размера
+ 190 - 0
unpackage/dist/dev/mp-weixin/pagesMy/opinion/index.js


+ 4 - 0
unpackage/dist/dev/mp-weixin/pagesMy/opinion/index.json

@@ -0,0 +1,4 @@
+{
+  "navigationBarTitleText": "意见反馈",
+  "usingComponents": {}
+}

+ 1 - 0
unpackage/dist/dev/mp-weixin/pagesMy/opinion/index.wxml

@@ -0,0 +1 @@
+<view class="main">系统首页</view>

+ 3 - 0
unpackage/dist/dev/mp-weixin/pagesMy/opinion/index.wxss

@@ -0,0 +1,3 @@
+
+.main {}
+

Разница между файлами не показана из-за своего большого размера
+ 14 - 14
unpackage/dist/dev/mp-weixin/uni_modules/uni-badge/components/uni-badge/uni-badge.js


Разница между файлами не показана из-за своего большого размера
+ 682 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js


+ 6 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.json

@@ -0,0 +1,6 @@
+{
+  "usingComponents": {
+    "uni-icons": "/uni_modules/uni-icons/components/uni-icons/uni-icons"
+  },
+  "component": true
+}

Разница между файлами не показана из-за своего большого размера
+ 1 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.wxml


+ 112 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.wxss

@@ -0,0 +1,112 @@
+@charset "UTF-8";
+/* 水平间距 */
+/* 水平间距 */
+.uni-easyinput {
+  width: 100%;
+  flex: 1;
+  position: relative;
+  text-align: left;
+  color: #333;
+  font-size: 14px;
+}
+.uni-easyinput__content {
+  flex: 1;
+  width: 100%;
+  display: flex;
+  box-sizing: border-box;
+  flex-direction: row;
+  align-items: center;
+  border-color: #fff;
+  transition-property: border-color;
+  transition-duration: 0.3s;
+}
+.uni-easyinput__content-input {
+  width: auto;
+  position: relative;
+  overflow: hidden;
+  flex: 1;
+  line-height: 1;
+  font-size: 14px;
+  height: 35px;
+}
+.uni-easyinput__placeholder-class {
+  color: #999;
+  font-size: 12px;
+}
+.is-textarea {
+  align-items: flex-start;
+}
+.is-textarea-icon {
+  margin-top: 5px;
+}
+.uni-easyinput__content-textarea {
+  position: relative;
+  overflow: hidden;
+  flex: 1;
+  line-height: 1.5;
+  font-size: 14px;
+  margin: 6px;
+  margin-left: 0;
+  height: 80px;
+  min-height: 80px;
+  min-height: 80px;
+  width: auto;
+}
+.input-padding {
+  padding-left: 10px;
+}
+.content-clear-icon {
+  padding: 0 5px;
+}
+.label-icon {
+  margin-right: 5px;
+  margin-top: -1px;
+}
+.is-input-border {
+  display: flex;
+  box-sizing: border-box;
+  flex-direction: row;
+  align-items: center;
+  border: 1px solid #F0F0F0;
+  border-radius: 4px;
+}
+.uni-error-message {
+  position: absolute;
+  bottom: -17px;
+  left: 0;
+  line-height: 12px;
+  color: #e43d33;
+  font-size: 12px;
+  text-align: left;
+}
+.uni-error-msg--boeder {
+  position: relative;
+  bottom: 0;
+  line-height: 22px;
+}
+.is-input-error-border {
+  border-color: #e43d33;
+}
+.is-input-error-border .uni-easyinput__placeholder-class {
+  color: #f29e99;
+}
+.uni-easyinput--border {
+  margin-bottom: 0;
+  padding: 10px 15px;
+  border-top: 1px #eee solid;
+}
+.uni-easyinput-error {
+  padding-bottom: 0;
+}
+.is-first-border {
+  border: none;
+}
+.is-disabled {
+  background-color: #f7f6f6;
+  color: #d5d5d5;
+}
+.is-disabled .uni-easyinput__placeholder-class {
+  color: #d5d5d5;
+  font-size: 12px;
+}
+

Разница между файлами не показана из-за своего большого размера
+ 15 - 15
unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js


Разница между файлами не показана из-за своего большого размера
+ 15 - 15
unpackage/dist/dev/mp-weixin/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.js