Commit 93bc80b94af15f658e35466fa138cebfe69df8d0
1 parent
07e147eb
增加下拉刷线功能
Showing
1 changed file
with
127 additions
and
91 deletions
src/pages/myGiftBox/myGiftBox.vue
| ... | ... | @@ -16,45 +16,57 @@ |
| 16 | 16 | </div> |
| 17 | 17 | <!-- btn按钮筛选 --> |
| 18 | 18 | <div class="tab_btn_list"> |
| 19 | - <van-tabs @change="onStatusFiltering" v-model="btnActive" swipeable> | |
| 20 | - <van-tab v-for="(item,index) in (active==0?receivingGiftsTab:giveGifTab)" :title="item.name" :key="'tab'+index"> | |
| 21 | - | |
| 22 | - </van-tab> | |
| 23 | - </van-tabs> | |
| 19 | + <van-tabs @change="onStatusFiltering" v-model="btnActive" swipeable> | |
| 20 | + <van-tab | |
| 21 | + v-for="(item, index) in active == 0 | |
| 22 | + ? receivingGiftsTab | |
| 23 | + : giveGifTab" | |
| 24 | + :title="item.name" | |
| 25 | + :key="'tab' + index" | |
| 26 | + > | |
| 27 | + </van-tab> | |
| 28 | + </van-tabs> | |
| 24 | 29 | </div> |
| 25 | - <!--内容--> | |
| 26 | - <div class="item_box"> | |
| 27 | - <div | |
| 28 | - infinite-scroll-immediate-check="true" | |
| 29 | - v-infinite-scroll="onInfiniteScroll" | |
| 30 | - infinite-scroll-disabled="loading" | |
| 31 | - :infinite-scroll-distance="50" | |
| 32 | - infinite-scroll-throttle-delay="600" | |
| 33 | - > | |
| 34 | - <!-- 收礼列表 --> | |
| 35 | - <receiving-gifts-item | |
| 36 | - v-show="active != 1 && active == 0" | |
| 37 | - @onUserInfo="onUserInfo" | |
| 38 | - @giftInReturn="giftInReturn" | |
| 39 | - @onReceivingGifts="onReceivingGifts" | |
| 40 | - :receivingGiftsInfo="receivingGiftsInfo" | |
| 41 | - :isData=this.receivingGifts.isData | |
| 42 | - ></receiving-gifts-item> | |
| 43 | - <!-- 送礼列表 --> | |
| 44 | - <giftGivingItem | |
| 45 | - @onGiftGiving="onGiftGiving" | |
| 46 | - @onCancelPayment="onCancelPayment" | |
| 47 | - @jumpToPay="jumpToPay" | |
| 48 | - v-show="active != 0 && active == 1" | |
| 49 | - :giftGivingItem="giftGivingItem" | |
| 50 | - :isData= this.giftGiving.isData | |
| 30 | + <!--下拉刷新--> | |
| 31 | + <van-pull-refresh v-model="isLoading" @refresh="onRefresh"> | |
| 32 | + <!--内容--> | |
| 33 | + <div class="item_box"> | |
| 34 | + <div | |
| 35 | + infinite-scroll-immediate-check="true" | |
| 36 | + v-infinite-scroll="onInfiniteScroll" | |
| 37 | + infinite-scroll-disabled="loading" | |
| 38 | + :infinite-scroll-distance="50" | |
| 39 | + infinite-scroll-throttle-delay="600" | |
| 51 | 40 | > |
| 52 | - </giftGivingItem> | |
| 53 | - <!-- 没有更多了 --> | |
| 54 | - <div v-if="active==0" class="tip_text">{{this.receivingGifts.tipText }}</div> | |
| 55 | - <div v-else class="tip_text">{{this.giftGiving.tipText }}</div> | |
| 41 | + <!-- 收礼列表 --> | |
| 42 | + <receiving-gifts-item | |
| 43 | + v-show="active != 1 && active == 0" | |
| 44 | + @onUserInfo="onUserInfo" | |
| 45 | + @giftInReturn="giftInReturn" | |
| 46 | + @onReceivingGifts="onReceivingGifts" | |
| 47 | + :receivingGiftsInfo="receivingGiftsInfo" | |
| 48 | + :isData="this.receivingGifts.isData" | |
| 49 | + ></receiving-gifts-item> | |
| 50 | + <!-- 送礼列表 --> | |
| 51 | + <giftGivingItem | |
| 52 | + @onGiftGiving="onGiftGiving" | |
| 53 | + @onCancelPayment="onCancelPayment" | |
| 54 | + @jumpToPay="jumpToPay" | |
| 55 | + v-show="active != 0 && active == 1" | |
| 56 | + :giftGivingItem="giftGivingItem" | |
| 57 | + :isData="this.giftGiving.isData" | |
| 58 | + > | |
| 59 | + </giftGivingItem> | |
| 60 | + <!-- 没有更多了 --> | |
| 61 | + <div v-if="active == 0" class="tip_text"> | |
| 62 | + {{ this.receivingGifts.tipText }} | |
| 63 | + </div> | |
| 64 | + <div v-else class="tip_text"> | |
| 65 | + {{ this.giftGiving.tipText }} | |
| 66 | + </div> | |
| 67 | + </div> | |
| 56 | 68 | </div> |
| 57 | - </div> | |
| 69 | + </van-pull-refresh> | |
| 58 | 70 | <!-- 弹出框 --> |
| 59 | 71 | <van-popup position="bottom" v-model="actionSheetShow"> |
| 60 | 72 | <van-picker |
| ... | ... | @@ -77,32 +89,34 @@ export default { |
| 77 | 89 | name: "myGiftBox", |
| 78 | 90 | data() { |
| 79 | 91 | return { |
| 80 | - receivingGiftsTab:[ // 收礼tab筛选 | |
| 81 | - {name:'全部',status:0}, | |
| 82 | - {name:'未填写地址',status:1}, | |
| 83 | - {name:'待发货',status:2}, | |
| 84 | - {name:'已完成',status:3}, | |
| 85 | - {name:'已发货',status:4} | |
| 92 | + receivingGiftsTab: [ | |
| 93 | + // 收礼tab筛选 | |
| 94 | + { name: "全部", status: 0 }, | |
| 95 | + { name: "未填写地址", status: 1 }, | |
| 96 | + { name: "待发货", status: 2 }, | |
| 97 | + { name: "已完成", status: 3 }, | |
| 98 | + { name: "已发货", status: 4 } | |
| 86 | 99 | ], |
| 87 | - receivingGiftStatue:null, // 收礼订单状态筛选 | |
| 88 | - giveGifTab:[ // 送礼tab筛选 | |
| 89 | - {name:'全部',status:0}, | |
| 90 | - {name:'可分享',status:1}, | |
| 91 | - {name:'未填写地址',status:2}, | |
| 92 | - {name:'待发货',status:3}, | |
| 93 | - {name:'未领退款',status:4} | |
| 100 | + receivingGiftStatue: null, // 收礼订单状态筛选 | |
| 101 | + giveGifTab: [ | |
| 102 | + // 送礼tab筛选 | |
| 103 | + { name: "全部", status: 0 }, | |
| 104 | + { name: "可分享", status: 1 }, | |
| 105 | + { name: "未填写地址", status: 2 }, | |
| 106 | + { name: "待发货", status: 3 }, | |
| 107 | + { name: "未领退款", status: 4 } | |
| 94 | 108 | ], |
| 95 | - giveGifStatue:null, // 送礼订单状态筛选 | |
| 96 | - btnActive:0, // 按钮tab状态 | |
| 97 | - active: 0, | |
| 109 | + giveGifStatue: null, // 送礼订单状态筛选 | |
| 110 | + btnActive: 0, // 按钮tab状态 | |
| 111 | + active: 0, // 收礼送礼两tab切换 | |
| 98 | 112 | receivingGiftsInfo: null, // 收礼列表页数据 |
| 99 | 113 | loading: false, // 判断是否加载 |
| 100 | 114 | receivingGifts: { |
| 101 | 115 | // 收礼 |
| 102 | 116 | loading: false, // 加载 |
| 103 | 117 | pages: 1, // 分页 |
| 104 | - tipText:null, // 数据加载完提示 | |
| 105 | - isData:null // 是否有赠礼 1 有 0 无 | |
| 118 | + tipText: null, // 数据加载完提示 | |
| 119 | + isData: null // 是否有赠礼 1 有 0 无 | |
| 106 | 120 | }, |
| 107 | 121 | giftGivingItem: null, // 送礼列表页数据 |
| 108 | 122 | giftsRuleUrl: null, // 礼物规则URL |
| ... | ... | @@ -110,8 +124,8 @@ export default { |
| 110 | 124 | // 送礼 |
| 111 | 125 | loading: false, // 加载 |
| 112 | 126 | pages: 1, // 分页 |
| 113 | - tipText:null, // 数据加载完提示 | |
| 114 | - isData:null // 是否有赠礼 1 有 0 无 | |
| 127 | + tipText: null, // 数据加载完提示 | |
| 128 | + isData: null // 是否有赠礼 1 有 0 无 | |
| 115 | 129 | }, |
| 116 | 130 | // tipText: null, // 是否已加载完 |
| 117 | 131 | actionSheetShow: false, |
| ... | ... | @@ -119,7 +133,8 @@ export default { |
| 119 | 133 | // 存取取消订单的信息 |
| 120 | 134 | causes: [], // 取消原因 |
| 121 | 135 | item: null //订单id |
| 122 | - } | |
| 136 | + }, | |
| 137 | + isLoading: false //下拉刷新 | |
| 123 | 138 | }; |
| 124 | 139 | }, |
| 125 | 140 | components: { |
| ... | ... | @@ -154,6 +169,27 @@ export default { |
| 154 | 169 | } |
| 155 | 170 | }, |
| 156 | 171 | methods: { |
| 172 | + //下拉刷新时会触发 refresh 事件 | |
| 173 | + onRefresh() { | |
| 174 | + setTimeout(() => { | |
| 175 | + Toast("刷新成功"); | |
| 176 | + this.isLoading = false; | |
| 177 | + // 初始化页脚 | |
| 178 | + this.receivingGifts.pages = 1; | |
| 179 | + this.giftGiving.pages = 1 | |
| 180 | + if (this.active == 0) { | |
| 181 | + // 收礼订单列表 | |
| 182 | + this.getorderGiftList(); | |
| 183 | + // 调用im是否显示隐藏1显示im聊天弹窗0不显示 | |
| 184 | + this.setGiftBottomVisibleBySwitchTab(0); | |
| 185 | + } else { | |
| 186 | + // 调用im是否显示隐藏1显示im聊天弹窗0不显示 | |
| 187 | + this.setGiftBottomVisibleBySwitchTab(1); | |
| 188 | + // 送礼订单列表 | |
| 189 | + this.getorderGiveGiftList(); | |
| 190 | + } | |
| 191 | + }, 1000); | |
| 192 | + }, | |
| 157 | 193 | /** |
| 158 | 194 | * tab切换 |
| 159 | 195 | */ |
| ... | ... | @@ -175,14 +211,14 @@ export default { |
| 175 | 211 | } |
| 176 | 212 | }, |
| 177 | 213 | // tab订单状态筛选 |
| 178 | - onStatusFiltering(name, title){ | |
| 179 | - if(this.active==0){ | |
| 214 | + onStatusFiltering(name, title) { | |
| 215 | + if (this.active == 0) { | |
| 180 | 216 | // 收礼订单列表 |
| 181 | 217 | this.receivingGiftStatue = name; |
| 182 | 218 | this.receivingGifts.tipText = null; |
| 183 | - this.receivingGifts.pages = 1 | |
| 219 | + this.receivingGifts.pages = 1; | |
| 184 | 220 | this.getorderGiftList(1); |
| 185 | - }else{ | |
| 221 | + } else { | |
| 186 | 222 | // 送礼订单列表 |
| 187 | 223 | this.giveGifStatue = name; |
| 188 | 224 | this.giftGiving.tipText = null; |
| ... | ... | @@ -264,7 +300,7 @@ export default { |
| 264 | 300 | * 获取收礼礼物列表 |
| 265 | 301 | */ |
| 266 | 302 | getorderGiftList(initPage) { |
| 267 | - console.log(this.receivingGifts.pages) | |
| 303 | + console.log(this.receivingGifts.pages); | |
| 268 | 304 | this.receivingGifts.loading = true; |
| 269 | 305 | // 加载中提示 |
| 270 | 306 | Indicator.open("加载中..."); |
| ... | ... | @@ -276,7 +312,7 @@ export default { |
| 276 | 312 | uid: this.$route.query.uid, // 用户id |
| 277 | 313 | page: this.receivingGifts.pages, // 分页 默认为1 一页20条 |
| 278 | 314 | type: 1, // 1 收礼列表 2 送礼列表(送礼已废弃) |
| 279 | - status:this.receivingGiftStatue// 0或者不传 全部 1 未填地址 2 未发货 3 已完成 4 已发货 | |
| 315 | + status: this.receivingGiftStatue // 0或者不传 全部 1 未填地址 2 未发货 3 已完成 4 已发货 | |
| 280 | 316 | }, |
| 281 | 317 | this.getorderGiftListCallback, |
| 282 | 318 | { |
| ... | ... | @@ -299,15 +335,15 @@ export default { |
| 299 | 335 | if (res.code == 200) { |
| 300 | 336 | // 解构数据 |
| 301 | 337 | let { data: datas } = res; |
| 302 | - // is_data是否有赠礼 1 有 0 无 | |
| 303 | - this.receivingGifts.isData = datas.is_data | |
| 338 | + // is_data是否有赠礼 1 有 0 无 | |
| 339 | + this.receivingGifts.isData = datas.is_data; | |
| 304 | 340 | // 页脚等于1的时候会出现数据获取为空 |
| 305 | - // if(this.receivingGifts.pages==1){ | |
| 306 | - // this.receivingGiftsInfo = datas.list; | |
| 307 | - // } | |
| 341 | + // if(this.receivingGifts.pages==1){ | |
| 342 | + // this.receivingGiftsInfo = datas.list; | |
| 343 | + // } | |
| 308 | 344 | // 设置shopFnsDynamic达人动态数据 |
| 309 | 345 | if (datas.list && datas.list.length) { |
| 310 | - // 隐藏加载圈 | |
| 346 | + // 隐藏加载圈 | |
| 311 | 347 | this.receivingGifts.loading = false; |
| 312 | 348 | if (this.receivingGifts.pages > 1) { |
| 313 | 349 | this.$set(this, "receivingGiftsInfo", [ |
| ... | ... | @@ -317,15 +353,15 @@ export default { |
| 317 | 353 | } else { |
| 318 | 354 | this.$set(this, "receivingGiftsInfo", datas.list); |
| 319 | 355 | } |
| 320 | - // 判断是否显示没有更多 | |
| 321 | - if(datas.list.length<20){ | |
| 322 | - this.receivingGifts.tipText = "已经全部加载完毕"; | |
| 323 | - }else{ | |
| 324 | - this.receivingGifts.tipText = ""; | |
| 325 | - } | |
| 326 | - }else{ | |
| 356 | + // 判断是否显示没有更多 | |
| 357 | + if (datas.list.length < 20) { | |
| 358 | + this.receivingGifts.tipText = "已经全部加载完毕"; | |
| 359 | + } else { | |
| 360 | + this.receivingGifts.tipText = ""; | |
| 361 | + } | |
| 362 | + } else { | |
| 327 | 363 | // this.receivingGifts.pages = 1; // 数据为空时页脚从1开始计算 |
| 328 | - if(this.receivingGifts.pages==1){ | |
| 364 | + if (this.receivingGifts.pages == 1) { | |
| 329 | 365 | //页脚等于1的时候会出现数据获取为空 |
| 330 | 366 | this.receivingGiftsInfo = datas.list; |
| 331 | 367 | } |
| ... | ... | @@ -418,7 +454,7 @@ export default { |
| 418 | 454 | }, |
| 419 | 455 | this.getorderGiveGiftListCallback, |
| 420 | 456 | { |
| 421 | - method: "post", | |
| 457 | + method: "post" | |
| 422 | 458 | } |
| 423 | 459 | ); |
| 424 | 460 | }, |
| ... | ... | @@ -437,12 +473,12 @@ export default { |
| 437 | 473 | // 解构数据 |
| 438 | 474 | let { data: datas } = res; |
| 439 | 475 | // is_data是否有赠礼 1 有 0 无 |
| 440 | - this.giftGiving.isData = datas.is_data | |
| 441 | - // 页脚等于1的时候会出现数据获取为空 | |
| 442 | - // if(this.receivingGifts.pages==1){ | |
| 443 | - // this.giftGivingItem = datas.list; | |
| 444 | - // } | |
| 445 | - // 设置giftGivingItem数据 | |
| 476 | + this.giftGiving.isData = datas.is_data; | |
| 477 | + // 页脚等于1的时候会出现数据获取为空 | |
| 478 | + // if(this.receivingGifts.pages==1){ | |
| 479 | + // this.giftGivingItem = datas.list; | |
| 480 | + // } | |
| 481 | + // 设置giftGivingItem数据 | |
| 446 | 482 | if (datas.list && datas.list.length) { |
| 447 | 483 | // 隐藏加载圈 |
| 448 | 484 | this.giftGiving.loading = false; |
| ... | ... | @@ -455,14 +491,14 @@ export default { |
| 455 | 491 | this.$set(this, "giftGivingItem", datas.list); |
| 456 | 492 | } |
| 457 | 493 | // 判断是否显示没有更多 |
| 458 | - if(datas.list.length<20){ | |
| 459 | - this.giftGiving.tipText = "已经全部加载完毕"; | |
| 460 | - }else{ | |
| 461 | - this.giftGiving.tipText = ""; | |
| 462 | - } | |
| 463 | - }else{ | |
| 494 | + if (datas.list.length < 20) { | |
| 495 | + this.giftGiving.tipText = "已经全部加载完毕"; | |
| 496 | + } else { | |
| 497 | + this.giftGiving.tipText = ""; | |
| 498 | + } | |
| 499 | + } else { | |
| 464 | 500 | // this.giftGiving.pages = 1;// 数据为空时设置分页数为1 |
| 465 | - if(this.giftGiving.pages==1){ | |
| 501 | + if (this.giftGiving.pages == 1) { | |
| 466 | 502 | //页脚等于1的时候会出现数据获取为空 |
| 467 | 503 | this.giftGivingItem = datas.list; |
| 468 | 504 | } | ... | ... |