C端小程序
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

140 Zeilen
3.1 KiB

  1. let config = require("../../../config/config.js");
  2. let Http = require("../../../utils/HttpBasics");
  3. const util = require("../../../utils/util");
  4. let app = getApp();
  5. Page({
  6. data: {
  7. tabs: [
  8. {
  9. key: "all",
  10. name: "全部"
  11. },
  12. {
  13. key: 0,
  14. name: "待付款"
  15. },
  16. {
  17. key: 1,
  18. name: "已完成"
  19. }
  20. ],
  21. list: [],
  22. current: "",
  23. current_scroll: "1",
  24. page: 1,
  25. allow_load: true,
  26. loading: true, //"上拉加载"的变量,默认false,隐藏
  27. content:"",
  28. },
  29. onLoad(e) {
  30. this.getList(e.id, 1);
  31. this.setData({
  32. current_scroll: e.id
  33. });
  34. },
  35. gotopay:function(e){
  36. console.log("orderId"+e.currentTarget.dataset.id);
  37. wx.navigateTo({
  38. url: `/pages/order/detail/index?orderId=${e.currentTarget.dataset.id}&flag='pay'`})
  39. },
  40. getList(key, pageNum) {
  41. let that = this;
  42. console.log(key);
  43. /**
  44. * key==0
  45. * 不发送该字段
  46. */
  47. if (key == 'all') {
  48. var variable = {
  49. pageNum: pageNum,
  50. pageSize: 15,
  51. paymentType:0
  52. };
  53. } else {
  54. var variable = {
  55. pageNum: pageNum,
  56. pageSize: 15,
  57. orderStatus: key,
  58. paymentType:0
  59. };
  60. }
  61. if (that.data.allow_load) {
  62. that.setData({
  63. loading:true,
  64. content:'小主,我在玩命加载中...'
  65. })
  66. Http.get({
  67. url: config.api.orderList,
  68. data: variable
  69. }).then(res => {
  70. console.log(res);
  71. if (pageNum >= res.data.pages) {
  72. that.setData({
  73. allow_load: false
  74. });
  75. setTimeout(function() {
  76. that.setData({
  77. loading:false,
  78. })
  79. }, 1400);
  80. }
  81. setTimeout(function() {
  82. that.setData({
  83. loading:false,
  84. })
  85. }, 1400);
  86. /**
  87. * 先赋值后渲染页面
  88. * concat 不会改变原数组值
  89. * push 会改变原数组值,但不会一条一条插入,而是整个数组插入
  90. */
  91. that.data.list = that.data.list.concat(res.data.list);
  92. that.setData({
  93. list: that.data.list
  94. });
  95. for(let i=0; i<that.data.list.length; i++){
  96. that.setData({
  97. createDate:util.fmtDate(that.data.list[i].createDate)
  98. })
  99. }
  100. });
  101. } else {
  102. console.log("加载完成allow_load设置成false");
  103. that.setData({
  104. loading:true,
  105. content:"^_^再拉裤子就掉啦ʅ(´◔౪◔)ʃ"
  106. })
  107. setTimeout(function(){
  108. that.setData({
  109. loading:false,
  110. })
  111. },1400)
  112. }
  113. },
  114. handleChange({ detail }) {
  115. this.setData({
  116. current: detail.key
  117. });
  118. },
  119. handleChangeScroll({ detail }) {
  120. this.setData({
  121. list:[],
  122. allow_load: true,
  123. current_scroll: detail.key
  124. })
  125. this.getList(detail.key, 1);
  126. },
  127. onReachBottom: function() {
  128. var that = this;
  129. that.data.page++;
  130. that.setData({
  131. page: that.data.page
  132. });
  133. that.getList(that.data.current_scroll, that.data.page);
  134. }
  135. });