Commit d79dd8a8280470e03627e011d690b121921c09b2
1 parent
0110fab5
拼团的优化
Showing
3 changed files
with
47 additions
and
22 deletions
pages/activity/pind_list/pind_list.js
... | ... | @@ -120,25 +120,50 @@ Page({ |
120 | 120 | var o = endTimeList[i]; |
121 | 121 | var endTime = o.end_time; |
122 | 122 | if(th.data.type==0) endTime = o.start_time; |
123 | - let obj = null; | |
124 | - // 如果活动未结束,对时间进行处理 | |
125 | - if (endTime - newTime > 0){ | |
126 | - let time = (endTime - newTime); | |
127 | - // 获取天、时、分、秒 | |
128 | - let day = parseInt(time / (60 * 60 * 24)); | |
129 | - let hou = parseInt(time % (60 * 60 * 24) / 3600); | |
130 | - let min = parseInt(time % (60 * 60 * 24) % 3600 / 60); | |
131 | - let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60); | |
132 | - obj = { | |
133 | - day: this.timeFormat(day), hou: this.timeFormat(hou), min: this.timeFormat(min), sec: this.timeFormat(sec),hide:1 | |
123 | + | |
124 | + // 创建查询对象 | |
125 | + let query = wx.createSelectorQuery(); | |
126 | + // 获取目标元素,并获取目标元素的信息 | |
127 | + query.select("#kill-item"+i).boundingClientRect(); | |
128 | + // 获取视口,并获取视口信息 | |
129 | + query.selectViewport().boundingClientRect(); | |
130 | + //-- 执行查询,元素要在显示中的才显示定时器 -- | |
131 | + query.exec(([target, view]) => { | |
132 | + | |
133 | + if (!th.data.is_timer) return; | |
134 | + if (!target) return; | |
135 | + if (!target.id) return; | |
136 | + let idx= target.id.replace('kill-item',''); | |
137 | + // 条件1:当目标顶部距离视口顶部距离小于视口的高度时 | |
138 | + // 条件2:当目标底部距离视口顶部距离大于0时 | |
139 | + // 当以上两个条件同时成立时,目标元素在视口中 | |
140 | + if (target.top < view.height && target.bottom > 0) { | |
141 | + | |
142 | + let obj = null; | |
143 | + // 如果活动未结束,对时间进行处理 | |
144 | + if (endTime - newTime > 0) { | |
145 | + let time = (endTime - newTime); | |
146 | + // 获取天、时、分、秒 | |
147 | + let day = parseInt(time / (60 * 60 * 24)); | |
148 | + let hou = parseInt(time % (60 * 60 * 24) / 3600); | |
149 | + let min = parseInt(time % (60 * 60 * 24) % 3600 / 60); | |
150 | + let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60); | |
151 | + obj = { | |
152 | + day: this.timeFormat(day), | |
153 | + hou: this.timeFormat(hou), | |
154 | + min: this.timeFormat(min), | |
155 | + sec: this.timeFormat(sec), | |
156 | + hide: 1 | |
157 | + } | |
158 | + } else { | |
159 | + //活动已结束,全部设置为'00' | |
160 | + obj = {day: '00', hou: '00', min: '00', sec: '00'} | |
134 | 161 | } |
135 | - }else{ | |
136 | - //活动已结束,全部设置为'00' | |
137 | - obj = { day: '00', hou: '00', min: '00', sec: '00' } | |
138 | - } | |
139 | - var txt ="goodlist["+i+"].djs"; | |
140 | - th.setData({ [txt]: obj}); | |
141 | - } | |
162 | + var txt = "goodlist[" + idx + "].djs"; | |
163 | + th.setData({[txt]: obj}); | |
164 | + } | |
165 | + }); | |
166 | + } | |
142 | 167 | }, |
143 | 168 | |
144 | 169 | //读取数据 | ... | ... |
pages/activity/pind_list/pind_list.wxml
... | ... | @@ -28,7 +28,7 @@ |
28 | 28 | |
29 | 29 | |
30 | 30 | <view class="kill-list"> |
31 | - <view class="kill-item" wx:for="{{goodlist}}" wx:if="{{item.djs.hide==1}}"> | |
31 | + <view id="kill-item{{index}}" class="kill-item" wx:for="{{goodlist}}" > | |
32 | 32 | <navigator class="kill-pic " url="{{!item.goods_type ? ('/pages/goods/goodsInfo/goodsInfo?prom_type=6&goods_id=' + item.goods_id+ '&prom_id=' + item.id):('/packageA/pages/serviceCard_pd/goodsInfo/goodsInfo?prom_type=6&goods_id=' + item.goods_id + '&prom_id=' + item.id)}}"> |
33 | 33 | <image class="wh100" src="{{url}}{{item.original_img}}" data-val="{{item.original_img}}" |
34 | 34 | data-errorimg="goodlist[{{index}}].original_img" binderror="bind_bnerr2" lazy-load="true"></image> | ... | ... |
pages/goods/goodsInfo/goodsInfo.js
... | ... | @@ -403,8 +403,8 @@ Page({ |
403 | 403 | |
404 | 404 | //判断活动 |
405 | 405 | if (prom_type) { |
406 | - this.data.prom_type = prom_type; | |
407 | - this.data.prom_id = prom_id; | |
406 | + this.data.prom_type = parseInt(prom_type); | |
407 | + this.data.prom_id = parseInt(prom_id); | |
408 | 408 | |
409 | 409 | //-- 基础的活动类型 -- |
410 | 410 | this.data.base_nor_prom_type = prom_type; |
... | ... | @@ -5770,7 +5770,7 @@ Page({ |
5770 | 5770 | }); |
5771 | 5771 | |
5772 | 5772 | // s.my_warnning('超出商品限购', 0, th); |
5773 | - var num = 0;//th.data.prom_buy_limit - th.data.prom_buy_num; | |
5773 | + var num = th.data.sele_g.viplimited - th.data.g_buy_num.get(th.data.sele_g.goods_id); | |
5774 | 5774 | if (num <= 0) num = 1; |
5775 | 5775 | th.setData({ |
5776 | 5776 | goodsInputNum: num | ... | ... |