goods.wxml 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229
  1. <scroll-view class="container" style="height: {{winHeight}}rpx" scroll-y="true">
  2. <view wx:if="{{showNavList}}" class="modal-wrap"></view>
  3. <view class="fast-nav">
  4. <contact-button wx:if="{{!showNavList}}" class="contact" size="25" type="primary" session-from="weapp">
  5. <text>找客服</text>
  6. </contact-button>
  7. <view wx:if="{{!showNavList}}" class="nav" bindtap="toggleNav">
  8. <text>快捷</text>
  9. <text>导航</text>
  10. </view>
  11. <view class="nav-list" wx:if="{{showNavList}}">
  12. <view class="nav-item">
  13. <text class="nav-text">首页</text>
  14. <view class="nav-cell" bindtap="switchNav" data-name="index">
  15. <image src="../../static/images/nav-1.png"></image>
  16. </view>
  17. </view>
  18. <view class="nav-item">
  19. <text class="nav-text">足迹</text>
  20. <navigator class="nav-cell" url="../ucenter/footprint/footprint">
  21. <image src="../../static/images/nav-2.png"></image>
  22. </navigator>
  23. </view>
  24. <view class="nav-item">
  25. <text class="nav-text">搜索</text>
  26. <navigator class="nav-cell" url="../search/search">
  27. <image src="../../static/images/nav-3.png"></image>
  28. </navigator>
  29. </view>
  30. <view class="nav-item">
  31. <text class="nav-text">购物车</text>
  32. <view class="nav-cell" bindtap="switchNav" data-name="cart">
  33. <image src="../../static/images/nav-4.png"></image>
  34. </view>
  35. </view>
  36. </view>
  37. <view wx:if="{{showNavList}}" class="close" bindtap="toggleNav">X</view>
  38. </view>
  39. <view>
  40. <swiper class="goodsimgs" indicator-dots="true" autoplay="true" interval="3000" duration="1000" bindtap="hideSwitchAttrPop">
  41. <swiper-item wx:for="{{gallery}}" wx:key="{{item.id}}">
  42. <image src="{{item.img_url}}" background-size="cover"></image>
  43. </swiper-item>
  44. </swiper>
  45. <!-- <view class="service-policy">
  46. <view class="item">30分钟速达</view>
  47. <view class="item">每日优选生鲜</view>
  48. <view class="item">满88元免运费</view>
  49. </view> -->
  50. <view class="goods-info">
  51. <view class="c" bindtap="hideSwitchAttrPop">
  52. <view class="goods-do">
  53. <text class="price">¥{{goods.retail_price}}</text>
  54. <text class="org-price line-through">¥{{goods.market_price}}</text>
  55. </view>
  56. <text class="name">{{goods.name}}</text>
  57. <text class="desc">{{goods.goods_brief}}</text>
  58. <!-- <view class="brand" wx:if="{{brand.name}}">
  59. <navigator url="../brandDetail/brandDetail?id={{brand.id}}">
  60. <text>{{brand.name}}</text>
  61. </navigator>
  62. </view> -->
  63. <view>
  64. <text class="desc">快递:{{defaultFreight==0?"免邮":"元"}}</text>
  65. </view>
  66. </view>
  67. </view>
  68. <view class="section-nav section-attr" bindtap="switchAttrPop">
  69. <view class="t">{{checkedSpecText=="请选择规格数量"?"请选择规格数量":"已选:【"+checkedSpecText+"】"}}</view>
  70. <image class="i" src="../../static/images/address_right.png" background-size="cover"></image>
  71. </view>
  72. <view class="crash-goods" wx:if="{{crashList.length > 0}}" bindtap="hideSwitchAttrPop">
  73. <view class="h">
  74. <view class="line"></view>
  75. <text class="title">搭配减价</text>
  76. </view>
  77. <view class="b">
  78. <view class="item" wx:for="{{crashList}}" wx:key="{{item.id}}">
  79. <navigator url="/pages/goods/goods?id={{item.goods_crash_id}}">
  80. <image class="img" src="{{item.list_pic_url}}" background-size="cover"></image>
  81. <text class="name">{{item.name}}</text>
  82. </navigator>
  83. <view class="goods-do">
  84. <text class="price">¥{{item.market_price}}</text>
  85. <text class="org-price line-through">¥{{item.retail_price}}</text>
  86. <view class="add" data-goods-id="{{item.goods_crash_id}}" data-product-id="{{item.product_crash_id}}" bindtap="addCrashNumber">+</view>
  87. </view>
  88. </view>
  89. </view>
  90. </view>
  91. <!--<view class="section-nav section-act">
  92. <view class="t">
  93. <view class="label">1个促销:</view>
  94. <view class="tag">万圣趴</view>
  95. <view class="text">全场满499,额外送糖果</view>
  96. </view>
  97. <image class="i" src="../../static/images/address_right.png" background-size="cover"></image>
  98. </view>-->
  99. <view class="comments" wx:if="{{comment.count > 0}}" bindtap="hideSwitchAttrPop">
  100. <view class="h">
  101. <navigator url="../comment/comment?valueId={{goods.id}}&typeId=0">
  102. <text class="t">评价({{comment.count > 999 ? '999+' : comment.count}})</text>
  103. <text class="i">查看全部</text>
  104. </navigator>
  105. </view>
  106. <view class="b">
  107. <view class="item">
  108. <view class="info">
  109. <view class="user">
  110. <image src="{{comment.data.avatar}}"></image>
  111. <text>{{comment.data.nickname}}</text>
  112. </view>
  113. <view class="time">{{comment.data.add_time}}</view>
  114. </view>
  115. <view class="content">
  116. {{comment.data.content}}
  117. </view>
  118. <view class="imgs" wx:if="{{comment.data.pic_list.length > 0}}">
  119. <image class="img" data-url="{{item.pic_url}}" wx:for="{{comment.data.pic_list}}" wx:key="{{item.id}}" bindtap="previewPic" src="{{item.pic_url}}"></image>
  120. </view>
  121. <!-- <view class="spec">白色 2件</view> -->
  122. </view>
  123. </view>
  124. </view>
  125. <view class="goods-attr" bindtap="hideSwitchAttrPop">
  126. <view class="t">商品参数</view>
  127. <view class="l">
  128. <view class="item" wx:for="{{attribute}}" wx:key="{{item.name}}">
  129. <text class="left">{{item.name}}</text>
  130. <text class="right">{{item.value}}</text>
  131. </view>
  132. </view>
  133. </view>
  134. <view class="detail" bindtap="hideSwitchAttrPop">
  135. <import src="../../lib/wxParse/wxParse.wxml" />
  136. <template is="wxParse" data="{{wxParseData:goodsDetail.nodes}}" />
  137. </view>
  138. <view class="common-problem" bindtap="hideSwitchAttrPop">
  139. <view class="h">
  140. <view class="line"></view>
  141. <text class="title">常见问题</text>
  142. </view>
  143. <view class="b">
  144. <view class="item" wx:for="{{issueList}}" wx:key="{{item.id}}">
  145. <view class="question-box">
  146. <text class="spot"></text>
  147. <text class="question">{{item.question}}</text>
  148. </view>
  149. <view class="answer">
  150. {{item.answer}}
  151. </view>
  152. </view>
  153. </view>
  154. </view>
  155. <view class="related-goods" wx:if="{{relatedGoods.length > 0}}">
  156. <view class="h">
  157. <view class="line"></view>
  158. <text class="title">大家都在看</text>
  159. </view>
  160. <view class="b">
  161. <view class="item" wx:for="{{relatedGoods}}" wx:key="{{item.id}}">
  162. <navigator url="/pages/goods/goods?id={{item.id}}">
  163. <image class="img" src="{{item.list_pic_url}}" background-size="cover"></image>
  164. <text class="name">{{item.name}}</text>
  165. <view class="price">¥{{item.retail_price}}
  166. <image class="cart" data-goods-id="{{item.id}}" data-product-id="{{item.product_id}}" catchtap='addNumber2' src="/static/images/cart.png" background-size="cover"></image>
  167. </view>
  168. </navigator>
  169. </view>
  170. </view>
  171. </view>
  172. </view>
  173. <view wx:if="{{openAttr}}" class="attr-pop">
  174. <view class="attr-close" bindtap="switchAttrPop">X</view>
  175. <view class="img-info">
  176. <image class="img" src="{{goods.list_pic_url}}"></image>
  177. <view class="info">
  178. <view class="c">
  179. <view class="p">价格:¥{{goods.retail_price}}</view>
  180. <view class="a" wx:if="{{productList.length>0}}">已选择:{{checkedSpecText}}</view>
  181. <view class="a">库存{{stockNum}}件</view>
  182. </view>
  183. </view>
  184. </view>
  185. <view class="spec-con">
  186. <view class="spec-item" wx:for="{{specificationList}}" wx:key="{{item.specification_id}}">
  187. <view class="name">{{item.name}}</view>
  188. <view class="values">
  189. <view class="value {{vitem.checked ? 'selected' : ''}}" bindtap="clickSkuValue" wx:for="{{item.valueList}}" wx:for-item="vitem" wx:key="{{vitem.id}}" data-value-id="{{vitem.id}}" data-name-id="{{vitem.specification_id}}">{{vitem.value}}</view>
  190. </view>
  191. </view>
  192. <view class="number-item">
  193. <view class="name">数量</view>
  194. <view class="selnum">
  195. <view class="cut" bindtap="cutNumber">-</view>
  196. <input value="{{number}}" class="number" disabled="true" type="number" />
  197. <view class="{{number+cartNumber>= stockNum? 'addEnabel':'add'}}" bindtap="{{number+cartNumber>= stockNum ? '':'addNumber'}}">+</view>
  198. </view>
  199. </view>
  200. </view>
  201. </view>
  202. </scroll-view>
  203. <view class="bottom-btn">
  204. <view class="l l-home" bindtap="switchNav">
  205. <image class="icon" src="/static/images/nav-1.png"></image>
  206. </view>
  207. <view class="l l-collect {{ openAttr ? 'back' : ''}}" bindtap="closeAttrOrCollect">
  208. <image class="icon" src="{{ collectBackImage }}"></image>
  209. </view>
  210. <view class="l l-cart">
  211. <view class="box">
  212. <text class="cart-count">{{cartGoodsCount}}</text>
  213. <image bindtap="openCartPage" class="icon" src="/static/images/ic_menu_shoping_nor.png"></image>
  214. </view>
  215. </view>
  216. <!-- <view class="c">立即购买</view> -->
  217. <view class="r" bindtap="addToCart">加入购物车</view>
  218. </view>