美甲小程序
Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.

271 righe
5.2 KiB

  1. // pages/detailContent/detailContent.js
  2. const utils = require('../../utils/serve')
  3. Page({
  4. /**
  5. * 页面的初始数据
  6. */
  7. data: {
  8. searchData: [
  9. ],
  10. isItem: 3,
  11. gramNum: null,
  12. paginate: null,
  13. rightStatus: true,
  14. leftStatus: true,
  15. hLoading: true,
  16. },
  17. /**
  18. * 生命周期函数--监听页面加载
  19. */
  20. onLoad: function (options) {
  21. this.initOn()
  22. },
  23. skipSearch: function () {
  24. wx.navigateTo({
  25. url: '/pages/pageSearch/pageSearch',
  26. })
  27. },
  28. // 右滑翻页
  29. onbolwerRight: function () {
  30. console.log(this.data.searchData[this.data.searchData.length - 1])
  31. this.setData({
  32. hLoading: false
  33. })
  34. if (this.data.rightStatus) {
  35. utils.http({
  36. url: '/manicureApi/Index/finishedProduct',
  37. method: 'GET',
  38. data: {
  39. id: this.data.searchData[this.data.searchData.length - 1].id,
  40. type: 'right'
  41. }
  42. }).then(res => {
  43. if (res.data.lists.length === 0) {
  44. wx.showToast({
  45. title: '已经到底啦~',
  46. duration: 2000,
  47. icon: 'none',
  48. success: () => {
  49. this.setData({
  50. hLoading: true
  51. })
  52. }
  53. })
  54. return
  55. }
  56. if (res.data.lists.length >= 1 && res.data.lists.length === 20) {
  57. this.data.rightStatus = true
  58. } else {
  59. this.data.rightStatus = false
  60. }
  61. this.setData({
  62. searchData: this.data.searchData.concat(res.data.lists),
  63. hLoading: true
  64. })
  65. })
  66. } else {
  67. wx.showToast({
  68. title: '已经到低啦~',
  69. duration: 2000,
  70. icon: 'none',
  71. success:()=>{
  72. this.setData({
  73. hLoading: true
  74. })
  75. }
  76. })
  77. }
  78. },
  79. // 左翻页
  80. onbolwerLeft: function () {
  81. this.setData({
  82. hLoading: false
  83. })
  84. if (this.data.leftStatus) {
  85. utils.http({
  86. url: '/manicureApi/Index/finishedProduct',
  87. method: 'GET',
  88. data: {
  89. id: this.data.searchData[0].id,
  90. type: 'left'
  91. }
  92. }).then(res => {
  93. if (res.data.lists.length >= 1 && res.data.lists.length === 20) {
  94. this.data.leftStatus = true
  95. } else {
  96. this.data.leftStatus = false
  97. }
  98. this.setData({
  99. searchData: res.data.lists.concat(this.data.searchData),
  100. hLoading: true
  101. })
  102. })
  103. } else {
  104. wx.showToast({
  105. title: '已经到顶了~',
  106. duration: 2000,
  107. icon: 'none',
  108. success:()=>{
  109. this.setData({
  110. hLoading: true
  111. })
  112. }
  113. })
  114. }
  115. },
  116. onSwiperItem: function (ev) {
  117. this.setData({
  118. isItem: ev.detail.current
  119. })
  120. },
  121. initOn: function (params) {
  122. const eventChannel = this.getOpenerEventChannel()
  123. eventChannel.on('acceptDataFromOpenerPage', (data, list, paginate, finData) => {
  124. let isItem = 0;
  125. for (let i = 0; i < list.length; i++) {
  126. if (list[i].id === data.id) {
  127. isItem = i
  128. break
  129. }
  130. }
  131. if (isItem <= 1) {
  132. utils.http({
  133. url: '/manicureApi/Index/finishedProduct',
  134. method: 'GET',
  135. data: {
  136. id: list[0].id,
  137. type: 'left'
  138. }
  139. }).then(res => {
  140. if (res.data.lists.length >= 1 && res.data.lists.length === 20) {
  141. this.data.leftStatus = true
  142. } else {
  143. this.data.leftStatus = false
  144. }
  145. this.setData({
  146. searchData: res.data.lists.concat(list),
  147. isItem: isItem + res.data.lists.length
  148. }, () => {
  149. this.data.paginate = paginate
  150. this.data.finData = finData
  151. })
  152. })
  153. } else {
  154. this.setData({
  155. searchData: list,
  156. isItem: isItem
  157. }, () => {
  158. this.data.paginate = paginate
  159. this.data.finData = finData
  160. })
  161. }
  162. })
  163. },
  164. setSearchColor: function (ev) {
  165. this.setData({
  166. isItem: ev.currentTarget.dataset.index
  167. })
  168. },
  169. skipInquire: function () {
  170. utils.http({
  171. url: '/manicureApi/Index/productDetail',
  172. method: 'GET',
  173. data: {
  174. id: this.data.searchData[this.data.isItem].id,
  175. num: this.data.gramNum,
  176. }
  177. }).then(res => {
  178. console.log(res)
  179. let data = JSON.stringify(res.data)
  180. wx.navigateTo({
  181. url: `/pages/pageInquire/pageInquire?data=${data}`,
  182. })
  183. })
  184. },
  185. onInputGram: function (ev) {
  186. this.data.gramNum = ev.detail.value
  187. },
  188. /**
  189. * 生命周期函数--监听页面初次渲染完成
  190. */
  191. onReady: function () {
  192. },
  193. /**
  194. * 生命周期函数--监听页面显示
  195. */
  196. onShow: function () {
  197. },
  198. /**
  199. * 生命周期函数--监听页面隐藏
  200. */
  201. onHide: function () {
  202. },
  203. /**
  204. * 生命周期函数--监听页面卸载
  205. */
  206. onUnload: function () {
  207. },
  208. /**
  209. * 页面相关事件处理函数--监听用户下拉动作
  210. */
  211. onPullDownRefresh: function () {
  212. },
  213. /**
  214. * 页面上拉触底事件的处理函数
  215. */
  216. onReachBottom: function () {
  217. },
  218. /**
  219. * 用户点击右上角分享
  220. */
  221. onShareAppMessage: function () {
  222. }
  223. })