From a6653e19d20a61e7b8f788037d2a4df3f93a4f32 Mon Sep 17 00:00:00 2001
From: queenwuli <942534046@qq.com>
Date: Tue, 12 Jan 2021 16:51:03 +0800
Subject: [PATCH] gx
---
hive-app/pages/mine/knowledge.vue | 115 ++++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 89 insertions(+), 26 deletions(-)
diff --git a/hive-app/pages/mine/knowledge.vue b/hive-app/pages/mine/knowledge.vue
index 899546b..4d32b07 100644
--- a/hive-app/pages/mine/knowledge.vue
+++ b/hive-app/pages/mine/knowledge.vue
@@ -4,54 +4,105 @@
<view class="list">
<scroll-view class="list-left" scroll-y="true">
<view class="list-left-row"
- v-for="(item,index) in typeList"
- :class="index==selectIndex?'active':''"
- @click="changeType(item.id, index)">
- <text>{{item.name}}</text>
+ v-for="item in typeList"
+ :class="item.id==typeId?'active':''"
+ @click="changeType(item.id)">
+ <text>{{item.articleTypeName}}</text>
</view>
</scroll-view>
- <scroll-view class="list-right" scroll-y="true">
- <navigator :url="'../productDetail/index?id='+item.id" hover-class="none" v-for="item in list">
+ <scroll-view class="list-right" scroll-y="true" @scrolltolower="scrolltolower()">
+ <navigator :url="'./knowledgeDetail?id='+item.id" hover-class="none" v-for="item in list">
<view class="list-right-row">
- <image class="product-img" :src="item.img?item.img:'../../../static/images/no-img.png'"></image>
+ <image class="product-img" :src="item.image?item.image:'../../static/images/no-img.png'"></image>
<view class="flex-1">
- <text>{{item.name}}</text>
- <view class="flex justify-between mt-15">
- <text class="price">¥{{item.price}}</text>
+ <text class="font-13">{{item.title}}</text>
+ <view class="desc">
+ <text>{{item.articleTypeName}}</text>
</view>
</view>
</view>
</navigator>
+ <no-record :isShow="!list.length"></no-record>
+ <view v-if="list.length">
+ <uni-load-more :status="loadStatus" color="#a5abaf"></uni-load-more>
+ </view>
</scroll-view>
</view>
</view>
</template>
<script>
+ import uniLoadMore from '@/components/uni-load-more/uni-load-more.vue';
export default {
+ components: {
+ uniLoadMore
+ },
data(){
return{
- typeList: [{
- name: '312',
- id: 2
- }],
- list: [{
- name: '312',
- id: 2
- }],
- selectIndex: 0
+ typeList: [],
+ list: [],
+ typeId: '',
+ loadStatus: 'more',
+ pageNum: 1
}
},
onLoad(options) {
- // this.loadTypeList()
+ this.loadTypeList()
+ },
+ onPullDownRefresh(){
+ this.reloadData();
+ let timer = setTimeout(function () {
+ uni.startPullDownRefresh();
+ clearTimeout(timer);
+ timer = null;
+ }, 800);
},
methods:{
+ reloadData(){
+ this.list = [];
+ this.pageNum = 1;
+ this.loadStatus = 'more';
+ this.loadList();
+ },
+ scrolltolower(){
+ this.loadList()
+ },
loadTypeList(){
this.$httpUtils.request('/api/know/findKnowledgeType').then((res) => {
if(res.status == 200){
- this.typeList = res.rows;
+ let result = res.rows;
+ this.typeList = result;
+ if(result.length){
+ this.typeId = result[0].id;
+ this.loadList()
+ }
}
})
+ },
+ loadList(){
+ if(this.loadStatus!=='more'){
+ return;
+ }
+ this.$httpUtils.request('/api/know/findArticleList', {
+ pageNum: this.pageNum,
+ pageSize: 10,
+ typeId: this.typeId
+ }, 'POST').then((res) => {
+ if(res.status == 200){
+ let result = res.rows;
+ if(result.length < 10){
+ this.loadStatus = 'noMore';
+ } else {
+ this.pageNum ++ ;
+ this.loadStatus = 'more';
+ }
+ this.list = this.list.concat(result);
+ }
+ })
+ },
+ changeType(id){
+ this.typeId = id;
+ this.reloadData()
}
}
}
@@ -75,6 +126,7 @@
}
.list-left{
width: 170rpx;
+ flex: 0 0 170rpx;
background: #F6F6F8;
border-radius: 4px;
}
@@ -92,17 +144,28 @@
}
.list-right-row{
display: flex;
- align-items: center;
padding: 10px;
margin: 0 10px 10px;
border: 1px solid #EDEAF4;
box-shadow:0 6px 6px rgba(237,234,244,0.5);
border-radius: 4px;
- font-size: 13px;
+ font-size: 12px;
}
.list-right-row .product-img{
- width: 66px;
- height: 66px;
- margin-right: 5px;
+ width: 62px;
+ height: 62px;
+ margin-right: 10px;
+ }
+ .desc{
+ margin-top: 8px;
+ color: #a5abaf;
+ word-break: break-all;
+ text-overflow: -o-ellipsis-lastline;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ display: -webkit-box;
+ -webkit-line-clamp: 2;
+ line-clamp: 2;
+ -webkit-box-orient: vertical;
}
</style>
--
Gitblit v1.9.1