Commit b9ec53859b5141f80b37339cd2ab7e4cd65b0bb5
1 parent
10ba946f
add 余额明细 刷新下拉分页请求
Showing
2 changed files
with
116 additions
and
36 deletions
pages.json
@@ -127,8 +127,10 @@ | @@ -127,8 +127,10 @@ | ||
127 | { | 127 | { |
128 | "path": "pages/rechargeDetail/rechargeDetail", | 128 | "path": "pages/rechargeDetail/rechargeDetail", |
129 | "style": { | 129 | "style": { |
130 | - "navigationBarTitleText": "充值明细" | 130 | + "navigationBarTitleText": "充值明细", |
131 | + "enablePullDownRefresh": true | ||
131 | } | 132 | } |
133 | + | ||
132 | }, | 134 | }, |
133 | { | 135 | { |
134 | "path": "pages/rechargeDetail/outDetail", | 136 | "path": "pages/rechargeDetail/outDetail", |
pages/rechargeDetail/rechargeDetail.vue
@@ -7,8 +7,7 @@ | @@ -7,8 +7,7 @@ | ||
7 | 消费类型 | 7 | 消费类型 |
8 | </view> | 8 | </view> |
9 | <view class="uni-list-cell-db"> | 9 | <view class="uni-list-cell-db"> |
10 | - <picker @change="bindPickerChange" :value="index" | ||
11 | - :range="kindArray" :range-key="'kindName'"> | 10 | + <picker @change="bindPickerChange" :value="index" :range="kindArray" :range-key="'kindName'"> |
12 | <view class="uni-input">{{kindArray[index].kindName}}</view> | 11 | <view class="uni-input">{{kindArray[index].kindName}}</view> |
13 | </picker> | 12 | </picker> |
14 | </view> | 13 | </view> |
@@ -21,8 +20,7 @@ | @@ -21,8 +20,7 @@ | ||
21 | 充值方式 | 20 | 充值方式 |
22 | </view> | 21 | </view> |
23 | <view class="uni-list-cell-db"> | 22 | <view class="uni-list-cell-db"> |
24 | - <picker @change="bindPickerChangeWay" :value="indexWay" | ||
25 | - :range="arrayWay" :range-key="'typeName'"> | 23 | + <picker @change="bindPickerChangeWay" :value="indexWay" :range="arrayWay" :range-key="'typeName'"> |
26 | <view class="uni-input">{{arrayWay[indexWay].typeName}}</view> | 24 | <view class="uni-input">{{arrayWay[indexWay].typeName}}</view> |
27 | </picker> | 25 | </picker> |
28 | </view> | 26 | </view> |
@@ -58,9 +56,7 @@ | @@ -58,9 +56,7 @@ | ||
58 | 56 | ||
59 | <view class="border-bg"></view> | 57 | <view class="border-bg"></view> |
60 | 58 | ||
61 | - | ||
62 | - <uni-load-more class="load" :content-text="contentText" :status="status" :icon-size="24" :iconType="iconType" | ||
63 | - v-if="rows.length == 0"> | 59 | + <view class="" v-if="orderList.length > 0"> |
64 | 60 | ||
65 | <uni-list class="rechargeWrap"> | 61 | <uni-list class="rechargeWrap"> |
66 | <view class="recordCon uni-list-cell-pd"> | 62 | <view class="recordCon uni-list-cell-pd"> |
@@ -124,8 +120,13 @@ | @@ -124,8 +120,13 @@ | ||
124 | > | 120 | > |
125 | </view> | 121 | </view> |
126 | </uni-list> | 122 | </uni-list> |
123 | + </view> | ||
124 | + <!-- 底部文案 --> | ||
125 | + <view class=""> | ||
126 | + <text>{{status === 'more' ? contentText.contentdown : (status === 'loading' ? contentText.contentrefresh : contentText.contentnomore)}}</text> | ||
127 | + </view> | ||
128 | + | ||
127 | 129 | ||
128 | - </uni-load-more> | ||
129 | 130 | ||
130 | 131 | ||
131 | </view> | 132 | </view> |
@@ -138,7 +139,8 @@ | @@ -138,7 +139,8 @@ | ||
138 | format: true | 139 | format: true |
139 | }) | 140 | }) |
140 | return { | 141 | return { |
141 | - detailText:'', | 142 | + |
143 | + detailText: '', | ||
142 | title: 'picker', | 144 | title: 'picker', |
143 | kindArray: [], | 145 | kindArray: [], |
144 | arrayWay: [], | 146 | arrayWay: [], |
@@ -146,17 +148,16 @@ | @@ -146,17 +148,16 @@ | ||
146 | indexWay: 0, | 148 | indexWay: 0, |
147 | beginDate: currentDate, | 149 | beginDate: currentDate, |
148 | overDate: currentDate, | 150 | overDate: currentDate, |
149 | - rows: [], | ||
150 | - pageNum: 1, //当前页 | ||
151 | - pageSize: 1, //每页条数 | ||
152 | - reload: false, | ||
153 | - status: 'more', | 151 | + orderList: [], |
152 | + page: 1, | ||
153 | + pageSize: 10, | ||
154 | + status: 'more', // 默认展示上拉显示更多 | ||
154 | contentText: { | 155 | contentText: { |
155 | - contentdown: '上拉加载更多~', | ||
156 | - contentrefresh: '正在加载更多~', | ||
157 | - contentmore: '我是有底线的~' | ||
158 | - }, | ||
159 | - iconType: 'auto', // 图标样式 | 156 | + contentdown: "上拉显示更多", |
157 | + contentrefresh: "正在加载...", | ||
158 | + contentnomore: "没有更多数据了" | ||
159 | + } | ||
160 | + | ||
160 | } | 161 | } |
161 | }, | 162 | }, |
162 | onLoad(params) { | 163 | onLoad(params) { |
@@ -164,12 +165,56 @@ | @@ -164,12 +165,56 @@ | ||
164 | withShareTicket: true | 165 | withShareTicket: true |
165 | }); | 166 | }); |
166 | this.getKindType(); | 167 | this.getKindType(); |
168 | + // 页码归为第1页 | ||
169 | + this.page = 1 | ||
170 | + // 初始化获取列表数据 | ||
171 | + this.fetchData() | ||
167 | 172 | ||
168 | }, | 173 | }, |
169 | onShow() { | 174 | onShow() { |
170 | - this.getDetailSummary(); | 175 | + this.getDetailSummary(); |
176 | + this.page = 1 | ||
177 | + this.pageSize = 10 | ||
178 | + this.orderList = [] | ||
179 | + this.fetchData() | ||
180 | + }, | ||
181 | + // 下拉刷新触发 | ||
182 | + onPullDownRefresh(val) { | ||
183 | + this.page = 1 | ||
184 | + this.pageSize = 10 | ||
185 | + console.log('下拉刷新', val) | ||
186 | + this.fetchData().then(() => { | ||
187 | + uni.stopPullDownRefresh(); | ||
188 | + }).catch(err => { | ||
189 | + uni.stopPullDownRefresh(); | ||
190 | + // 弹窗提示 | ||
191 | + uni.showToast({ | ||
192 | + title: '请求出错了', | ||
193 | + icon: 'none' | ||
194 | + }) | ||
195 | + }) | ||
196 | + }, | ||
197 | + // 上拉加载触发 | ||
198 | + onReachBottom() { | ||
199 | + // 改变状态为加载中 | ||
200 | + this.status = 'loading' | ||
201 | + // 页码发生变化 | ||
202 | + ++this.page | ||
203 | + // 加载更多 | ||
204 | + this.fetchData('loadMore').then(resArray => { | ||
205 | + // 此时判断当前有没有请求到数据 | ||
206 | + if (resArray.length) { | ||
207 | + this.status = 'more' | ||
171 | 208 | ||
209 | + } else { | ||
210 | + this.status = 'noMore'; | ||
211 | + --this.page; | ||
212 | + } | ||
213 | + }).catch(err => { | ||
214 | + console.log('网络请求失败') | ||
215 | + }) | ||
172 | }, | 216 | }, |
217 | + | ||
173 | computed: { | 218 | computed: { |
174 | startDate() { | 219 | startDate() { |
175 | return this.getDate('start'); | 220 | return this.getDate('start'); |
@@ -198,17 +243,20 @@ | @@ -198,17 +243,20 @@ | ||
198 | let that = this; | 243 | let that = this; |
199 | that.index = e.detail.value | 244 | that.index = e.detail.value |
200 | that.arrayWay = that.kindArray[that.index].typeList; | 245 | that.arrayWay = that.kindArray[that.index].typeList; |
201 | - | 246 | + that.fetchData() |
202 | }, | 247 | }, |
203 | bindPickerChangeWay: function(e) { | 248 | bindPickerChangeWay: function(e) { |
204 | console.log('picker发送选择改变,携带值为', e.detail.value) | 249 | console.log('picker发送选择改变,携带值为', e.detail.value) |
205 | this.indexWay = e.detail.value | 250 | this.indexWay = e.detail.value |
251 | + that.fetchData() | ||
206 | }, | 252 | }, |
207 | bindStartDateChange: function(e) { | 253 | bindStartDateChange: function(e) { |
208 | this.beginDate = e.detail.value | 254 | this.beginDate = e.detail.value |
255 | + that.fetchData() | ||
209 | }, | 256 | }, |
210 | bindEndDateChange: function(e) { | 257 | bindEndDateChange: function(e) { |
211 | this.overDate = e.detail.value | 258 | this.overDate = e.detail.value |
259 | + that.fetchData() | ||
212 | }, | 260 | }, |
213 | getDate(type) { | 261 | getDate(type) { |
214 | const date = new Date(); | 262 | const date = new Date(); |
@@ -224,13 +272,13 @@ | @@ -224,13 +272,13 @@ | ||
224 | day = day > 9 ? day : '0' + day; | 272 | day = day > 9 ? day : '0' + day; |
225 | return `${year}-${month}-${day}`; | 273 | return `${year}-${month}-${day}`; |
226 | }, | 274 | }, |
227 | - getDetailSummary(){ | ||
228 | - let that=this; | ||
229 | - let data ={ | 275 | + getDetailSummary() { |
276 | + let that = this; | ||
277 | + let data = { | ||
230 | kind: '1', | 278 | kind: '1', |
231 | type: '1', | 279 | type: '1', |
232 | - beginDate:new Date(that.beginDate + " 00:00:00") , | ||
233 | - endDate:new Date(that.overDate + " 23:59:59") | 280 | + beginDate: new Date(that.beginDate + " 00:00:00"), |
281 | + endDate: new Date(that.overDate + " 23:59:59") | ||
234 | }; | 282 | }; |
235 | console.log(data) | 283 | console.log(data) |
236 | that.$myRequest({ | 284 | that.$myRequest({ |
@@ -238,21 +286,51 @@ | @@ -238,21 +286,51 @@ | ||
238 | method: 'POST', | 286 | method: 'POST', |
239 | data: that.$common.requestSign(data) | 287 | data: that.$common.requestSign(data) |
240 | }).then(res => { | 288 | }).then(res => { |
241 | - | 289 | + |
242 | let data = res.data; | 290 | let data = res.data; |
243 | - if(data.rechargeSummary){ | 291 | + if (data.rechargeSummary) { |
244 | that.detailText = data.rechargeSummary | 292 | that.detailText = data.rechargeSummary |
245 | } | 293 | } |
246 | - if(data.paySummary){ | 294 | + if (data.paySummary) { |
247 | that.detailText = data.paySummary | 295 | that.detailText = data.paySummary |
248 | } | 296 | } |
249 | - | 297 | + |
250 | }) | 298 | }) |
251 | - | ||
252 | - } | ||
253 | - | ||
254 | - | ||
255 | - | 299 | + |
300 | + }, | ||
301 | + | ||
302 | + fetchData(way) { | ||
303 | + let that = this | ||
304 | + let paramsData = { | ||
305 | + pageNum: that.page, | ||
306 | + pageSize: that.pageSize, | ||
307 | + kind: '1', | ||
308 | + type: '1', | ||
309 | + beginDate: new Date(that.beginDate + " 00:00:00"), | ||
310 | + endDate: new Date(that.overDate + " 23:59:59") | ||
311 | + } | ||
312 | + // 首页信息获取 接口 | ||
313 | + that.$myRequest({ | ||
314 | + url: that.$common.walletDetailsPage, | ||
315 | + method: 'POST', | ||
316 | + data: that.$common.requestSign(paramsData) | ||
317 | + }).then(res => { | ||
318 | + | ||
319 | + // 当页的数据 | ||
320 | + const resDataArray = res.data | ||
321 | + if (way === 'loadMore') { | ||
322 | + that.orderList = that.orderList.concat(resDataArray) | ||
323 | + } else { | ||
324 | + that.orderList = resDataArray | ||
325 | + } | ||
326 | + | ||
327 | + }) | ||
328 | + | ||
329 | + | ||
330 | + | ||
331 | + | ||
332 | + }, | ||
333 | + | ||
256 | } | 334 | } |
257 | } | 335 | } |
258 | </script> | 336 | </script> |