From b902b40fda2f1dccca0825277d07908119deecfd Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期一, 02 三月 2026 09:57:58 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
mini-program/pages/community/community.vue | 105 ++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 85 insertions(+), 20 deletions(-)
diff --git a/mini-program/pages/community/community.vue b/mini-program/pages/community/community.vue
index 9e1b9da..faf1696 100644
--- a/mini-program/pages/community/community.vue
+++ b/mini-program/pages/community/community.vue
@@ -9,7 +9,7 @@
</view>
<view class="search">
<u-search placeholder="璇疯緭鍏ュ叧閿瘝" height="36" searchIconColor="#999999" borderColor="#eeeeee"
- bgColor="rgba(255,255,255,0.9)" :showAction="false" v-model="info" />
+ bgColor="rgba(255,255,255,0.9)" :showAction="false" v-model="info" @search="search" @clear="search" />
<view class="search-shai" @click="show = true">
<text>绛涢��</text>
<image src="/static/icon/ic_shaixuan@2x.png" mode="widthFix"></image>
@@ -17,13 +17,13 @@
</view>
</view>
<view class="list">
- <view class="list-item" v-for="(item, index) in list" :key="index" @click="jump(item.id)">
+ <view class="list-item" v-for="(item, index) in list" :key="index" @click="jump(item.id, item.contentType, item.content)">
<view class="info">
<view class="info-title">{{item.name}}</view>
<view class="info-desc" v-if="item.contentInfo">{{item.contentInfo}}</view>
<view class="info-data">
- <view class="tips">{{item.lablesName}}</view>
- <text>{{item.looknum || 0}} 闃呰锝渰{item.createDate}}</text>
+ <view class="tips" :style="{ border: '1rpx solid' + item.param, color: item.param }">{{item.lablesName}}</view>
+ <text>{{item.looknum > 999 ? '999+' : item.looknum || 0}} 闃呰锝渰{item.createDate.substring(0, 16)}}</text>
</view>
</view>
<view class="image" v-if="item.imgurlfull">
@@ -38,22 +38,20 @@
<view class="sear-item">
<view class="sear-item-label">鍒嗙被</view>
<view class="sear-item-list">
- <view class="sear-item-list-item active">缁翠慨</view>
- <view class="sear-item-list-item">淇濆吇</view>
+ <view :class="item.active ? 'sear-item-list-item active' : 'sear-item-list-item'" v-for="(item, index) in fenlei" :key="item.id" @click="sele(index, 1)">{{item.name}}</view>
<view style="width: 216rpx; height: 0;"></view>
</view>
</view>
<view class="sear-item">
<view class="sear-item-label">鎵�灞炲搧鐗�</view>
<view class="sear-item-list">
- <view class="sear-item-list-item active">鍝佺墝鍚嶇О</view>
- <view class="sear-item-list-item">鍝佺墝鍚嶇О</view>
+ <view :class="item.active ? 'sear-item-list-item active' : 'sear-item-list-item'" v-for="(item, index) in pinpai" :key="item.id" @click="sele(index, 2)">{{item.name}}</view>
<view style="width: 216rpx; height: 0;"></view>
</view>
</view>
<view class="sear-footer">
- <view class="sear-footer-btn1">閲嶇疆</view>
- <view class="sear-footer-btn2">纭</view>
+ <view class="sear-footer-btn1" @click="reset">閲嶇疆</view>
+ <view class="sear-footer-btn2" @click="search">纭</view>
</view>
</view>
</u-popup>
@@ -72,20 +70,78 @@
info: '',
page: 1,
next: true,
- list: []
+ list: [],
+ fenlei: [],
+ pinpai: []
};
},
onLoad() {
this.getList()
+ this.getCategary()
},
onReachBottom() {
this.getList()
},
methods: {
- jump(id) {
- uni.navigateTo({
- url: '/pages/article-details/article-details?id=' + id
+ reset() {
+ this.page = 1
+ this.next = true
+ this.list = []
+ this.fenlei.forEach(item => { item.active = false })
+ this.pinpai.forEach(item => { item.active = false })
+ this.show = false
+ this.getList()
+ },
+ search() {
+ this.page = 1
+ this.next = true
+ this.list = []
+ this.show = false
+ this.getList()
+ },
+ sele(index, type) {
+ if (type === 1) {
+ this.fenlei.forEach((item, i) => {
+ item.active = index === i
+ })
+ } else {
+ this.pinpai.forEach((item, i) => {
+ item.active = index === i
+ })
+ }
+ },
+ getCategary() {
+ this.$u.api.getGoodsLabelsByType({
+ type: 0
+ }).then(res => {
+ if (res.code === 200) {
+ res.data.forEach(item => {
+ item.active = false
+ })
+ this.fenlei = res.data
+ }
})
+ this.$u.api.getGoodsLabelsByType({
+ type: 1
+ }).then(res => {
+ if (res.code === 200) {
+ res.data.forEach(item => {
+ item.active = false
+ })
+ this.pinpai = res.data
+ }
+ })
+ },
+ jump(id, contentType, url) {
+ if (contentType == 0) {
+ uni.navigateTo({
+ url: '/pages/article-details/article-details?id=' + id
+ })
+ } else {
+ uni.navigateTo({
+ url: '/pagesA/pages/webview/webview?url=' + url
+ })
+ }
},
getList() {
if (!this.next) return;
@@ -94,8 +150,8 @@
page: this.page,
model: {
info: this.info,
- brandId: '',
- labelId: ''
+ brandId: this.pinpai.filter(item => item.active).length > 0 ? this.pinpai.filter(item => item.active)[0].id : null,
+ labelId: this.fenlei.filter(item => item.active).length > 0 ? this.fenlei.filter(item => item.active)[0].id : null
}
}).then(res => {
if (res.code === 200) {
@@ -129,7 +185,7 @@
width: 100%;
display: flex;
flex-direction: column;
- margin-top: 48rpx;
+ margin-top: 28rpx;
.sear-item-label {
font-weight: 500;
font-size: 32rpx;
@@ -155,6 +211,7 @@
font-weight: 400;
font-size: 28rpx;
color: #333333;
+ margin-bottom: 20rpx;
}
}
}
@@ -207,6 +264,10 @@
display: flex;
flex-direction: column;
.info-title {
+ width: calc(100vw - 60rpx - 220rpx);
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis;
font-weight: 600;
font-size: 32rpx;
color: #222222;
@@ -222,16 +283,20 @@
align-items: center;
margin-top: 20rpx;
.tips {
+ max-width: 110rpx;
height: 40rpx;
line-height: 40rpx;
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ // display: flex;
+ // align-items: center;
+ // justify-content: center;
padding: 0 8rpx;
box-sizing: border-box;
- background: rgba(0,183,117,0.1);
border-radius: 8rpx;
-
font-weight: 400;
font-size: 22rpx;
- color: #00B775;
margin-right: 20rpx;
}
text {
--
Gitblit v1.9.3