From c014ad381ee34957809f2f5f4f4512441dc83e12 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E9=82=93=E5=B9=B3=E8=89=BA?= <52643018@qq.com>
Date: Fri, 2 Jul 2021 11:57:54 +0800
Subject: [PATCH] =?UTF-8?q?[=E4=BC=98=E5=8C=96]=20=E5=95=86=E5=AE=B6?=
=?UTF-8?q?=E8=AE=A2=E5=8D=95=E5=88=97=E8=A1=A8=E5=A2=9E=E5=8A=A0=E6=BB=91?=
=?UTF-8?q?=E5=8A=A8=E9=A1=B5=E9=9D=A2=E5=88=87=E6=8D=A2tab=E7=9A=84?=
=?UTF-8?q?=E8=83=BD=E5=8A=9B=20[=E4=BF=AE=E6=94=B9]=20=E5=B1=8F=E8=94=BD?=
=?UTF-8?q?=E9=A6=96=E9=A1=B5=E3=80=81=E7=94=A8=E6=88=B7=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=E5=88=97=E8=A1=A8=E3=80=81=E5=95=86=E5=AE=B6=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=E5=88=97=E8=A1=A8=E9=A1=B5=E9=9D=A2=E4=B8=8B=E6=8B=89=E5=88=B7?=
=?UTF-8?q?=E6=96=B0=EF=BC=8C=E5=9B=A0=E4=B8=BAscroll-view=E5=B7=B2?=
=?UTF-8?q?=E6=9C=89=EF=BC=8C=E5=A6=82=E6=9E=9C=E9=9C=80=E8=A6=81=E5=86=8D?=
=?UTF-8?q?=E6=89=93=E5=BC=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pages.json | 6 +-
pages/order/index.vue | 7 +-
pages/shopOrder/index.vue | 143 +++++++++++++++++++++-----------------
3 files changed, 85 insertions(+), 71 deletions(-)
diff --git a/pages.json b/pages.json
index 0b7d089..95bbaee 100644
--- a/pages.json
+++ b/pages.json
@@ -7,21 +7,21 @@
"path": "pages/index/index",
"style": {
"navigationBarTitleText": "首页",
- "enablePullDownRefresh": true
+ "enablePullDownRefresh": false
}
},
{
"path": "pages/order/index",
"style": {
"navigationBarTitleText": "我的订单",
- "enablePullDownRefresh": true
+ "enablePullDownRefresh": false
}
},
{
"path": "pages/shopOrder/index",
"style": {
"navigationBarTitleText": "商户订单",
- "enablePullDownRefresh": true
+ "enablePullDownRefresh": false
}
},
{
diff --git a/pages/order/index.vue b/pages/order/index.vue
index 9e56340..eea3276 100644
--- a/pages/order/index.vue
+++ b/pages/order/index.vue
@@ -115,12 +115,7 @@
},
onShow() {
this.verifyUserInfo();
- let tab_item = this.tab_list[this.current];
- tab_item.page = 1;
- tab_item.isPage = true;
- tab_item.loadingClass = true;
- tab_item.loadingText = '正在加载中';
- this.getUserOrder();
+ this.refreshFn({});
},
methods: {
// 检查当前用户登录状态
diff --git a/pages/shopOrder/index.vue b/pages/shopOrder/index.vue
index 7ccd913..4e1a3b0 100644
--- a/pages/shopOrder/index.vue
+++ b/pages/shopOrder/index.vue
@@ -3,44 +3,48 @@
-
-
-
-
-
- {{item.state_text.text}}
-
-
- {{item.goods.name}}
-
- 数量
- x {{item.number}}
+
+
+
+
+
+
+
+ {{item.state_text.text}}
+
+
+ {{item.goods.name}}
+
+ 数量
+ x {{item.number}}
+
+
+
+
+
-
-
+
+
+
+ {{item.created_at_text}}
+
+
+ {{item.comment_text}}
+
+
-
-
-
-
- {{item.created_at_text}}
-
-
- {{item.comment_text}}
-
+
+
+ {{ tab.loadingText }}
+
-
-
-
-
- {{ tab.loadingText }}
-
-
-
-
-
+
+
+
+
+
@@ -95,19 +99,17 @@
current: 0, // tab下表
pageSize: 10,
assetsType: '', //账户类型
- orderType: []
+ orderType: [],
+ windowHeight: 0, // 屏幕可用高度
+ isRefresher: false // scroll-view下拉刷新状态,当前默认没有触发
}
},
onLoad(e) {
+ this.windowHeight = getApp().globalData.windowHeight;
this.assetsType = e.type
},
onShow() {
- let tab_item = this.tab_list[this.current];
- tab_item.page = 1;
- tab_item.isPage = true;
- tab_item.loadingClass = true;
- tab_item.loadingText = '正在加载中';
- this.getUserOrder();
+ this.refreshFn({});
},
methods: {
// 切换tab
@@ -115,27 +117,17 @@
this.current = index;
this.getUserOrder();
},
+ // 滑块下标值变化
+ swiperChange(event){
+ this.current = event.detail.current;
+ if(event.detail.source == '') return; // 如果是被动出发,没有事件类型则不做处理
+ this.getUserOrder();
+ },
goDetails(tabIndex,index) {
let item = this.tab_list[tabIndex].list[index]
this.$routerGo('/pages/shopOrder/order-details?order_id=' + item.id)
},
- onReachBottom() {
- let tab_item = this.tab_list[this.current];
- if (tab_item.isPage) {
- tab_item.page = tab_item.page + 1;
- this.getUserOrder();
- }
- },
- onPullDownRefresh() {
- let tab_item = this.tab_list[this.current];
- tab_item.page = 1;
- tab_item.isPage = true;
- tab_item.loadingClass = true;
- tab_item.loadingText = '正在加载中';
- this.getUserOrder();
- uni.stopPullDownRefresh()
- },
- getUserOrder() {
+ getUserOrder(options = {}) {
let per_page = this.pageSize;
let tab_item = this.tab_list[this.current];
this.$http(this.API.API_SHOPORDER, {
@@ -145,21 +137,48 @@
}).then(res => {
let isPage = res.data.has_more_page;
tab_item.isPage = isPage;
- if (isPage) {
- tab_item.loadingClass = true;
- tab_item.loadingText = '正在加载中';
- } else {
+ if (!isPage) {
tab_item.loadingClass = false;
tab_item.loadingText = '没有更多数据啦~';
}
+ if(options.type == 'pageRefresh'){
+ uni.stopPullDownRefresh();
+ }else if(options.type == 'scrollRefresh'){
+ this.isRefresher = false;
+ }
if (tab_item.page == 1) {
tab_item.list = res.data.items;
} else {
tab_item.list.push(...res.data.items);
}
})
+ },
+ // 页面触底,加载下一页
+ onScrolltolower(){
+ let tab_item = this.tab_list[this.current];
+ if(tab_item.isPage){
+ tab_item.page = tab_item.page + 1;
+ this.getUserOrder();
+ }
+ },
+ // scroll-view 下拉刷新
+ onRefresherrefresh(){
+ this.isRefresher = true;
+ this.refreshFn({type: 'scrollRefresh'});
+ },
+ // 下拉刷新处理
+ refreshFn(options){
+ let tab_item = this.tab_list[this.current];
+ tab_item.page = 1;
+ tab_item.isPage = true;
+ tab_item.loadingClass = true;
+ tab_item.loadingText = '正在加载中';
+ this.getUserOrder(options);
}
},
+ onPullDownRefresh() {
+ this.refreshFn({type: 'pageRefresh'});
+ },
}