index.vue 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276
  1. <template>
  2. <!-- /pages/user/address/addressList 收货 -->
  3. <view class="main">
  4. <navbar :config="config" backColor="#666"></navbar>
  5. <view class="tab-box" :style="`top: calc(${statusBarHeight}px + 44px)`">
  6. <view v-for="(item, index) in tabList" :key="index" class="tab" :class="tabActiveIndex == index ? 'active' : ''" @click="tabClick(index)">{{ item.text }}</view>
  7. </view>
  8. <view class="addr">
  9. <text class="iconfont2 addr-icon">&#xe610;</text>
  10. <view class="right">
  11. <view class="title-box">
  12. <view class="title">暂无收货地址</view>
  13. <view class="tip">立即添加收货地址</view>
  14. </view>
  15. <text class="iconfont2 arrow-icon">&#xe65f;</text>
  16. </view>
  17. </view>
  18. <view class="split-g"></view>
  19. <!-- 店铺(可能多个) -->
  20. <view class="content" v-for="(item,index) in 2" :key="index">
  21. <view class="shop-box">
  22. <view class="title-box">
  23. <text class="iconfont2">&#xe611;</text>
  24. <text>金字火腿旗舰店</text>
  25. </view>
  26. <!-- 商品(可能多个) -->
  27. <view class="card" v-for="(item,index) in 2" :key="index">
  28. <image class="cover"></image>
  29. <view class="right">
  30. <view class="title">金字 金华火腿肉300g家庭装 正宗浙江特产 煲汤火腿切片块腊味包邮</view>
  31. <view class="attr">火腿4斤 原味</view>
  32. <view class="count">x 2</view>
  33. <view class="price"><text class="int">¥00.</text>00</view>
  34. </view>
  35. </view>
  36. </view>
  37. <view class="mark-box">
  38. <view class="title">备注</view>
  39. <u-input type="textarea" border height="234" maxlength="500" placeholder="选填,给商家留言" style="background-color: #FAFAFA;" />
  40. </view>
  41. <view class="input-box">
  42. <view class="label">首单优惠</view>
  43. <view class="value">-18.00元</view>
  44. </view>
  45. <view class="input-box">
  46. <view class="label">店铺优惠</view>
  47. <view class="value">选择优惠券 ></view>
  48. </view>
  49. <view class="input-box">
  50. <view class="label">运费</view>
  51. <view class="value">+8元</view>
  52. </view>
  53. <view class="input-box">
  54. <view class="label">下单送爱心</view>
  55. <view class="value">100</view>
  56. </view>
  57. <view class="price-count">
  58. <text>共1件商品,小计</text>
  59. <text class="int">¥245.</text>
  60. <text class="float">06</text>
  61. </view>
  62. <view class="split"></view>
  63. </view>
  64. <!-- 订单优惠区(最多一个) -->
  65. <view class="input-box" style="padding: 23rpx 30rpx 20rpx 30rpx;height: 140rpx;border: 0;">
  66. <view class="label">平台优惠</view>
  67. <view class="value">选择优惠券 ></view>
  68. </view>
  69. <view class="split-g"></view>
  70. </view>
  71. </template>
  72. <script>
  73. export default {
  74. data() {
  75. return {
  76. //手机状态栏高度
  77. statusBarHeight: uni.getSystemInfoSync().statusBarHeight,
  78. config: {
  79. back: true,
  80. title: '确认订单',
  81. color: '#1a1a1a',
  82. backgroundColor: [1, '#fff'],
  83. statusBarFontColor: 'black'
  84. },
  85. tabList: [
  86. {
  87. text: '物流发货'
  88. },
  89. {
  90. text: '门店自提'
  91. }
  92. ],
  93. tabActiveIndex: 0
  94. }
  95. },
  96. methods: {
  97. tabClick(index) {
  98. let that = this;
  99. this.tabActiveIndex = index;
  100. },
  101. }
  102. };
  103. </script>
  104. <style lang="scss" scoped>
  105. .main{
  106. .addr{
  107. height: 180rpx;
  108. display: flex;
  109. justify-content: space-between;
  110. align-items: center;
  111. padding: 0 30rpx;
  112. .addr-icon{
  113. font-size: 50rpx;
  114. color: #057D53;
  115. }
  116. .right{
  117. width: 610rpx;
  118. display: flex;
  119. justify-content: space-between;
  120. align-items: center;
  121. .title-box{
  122. .title{
  123. font-size: 30rpx;
  124. font-family: MicrosoftYaHei;
  125. text-align: left;
  126. color: #181818;
  127. margin-bottom: 10rpx;
  128. }
  129. .tip{
  130. font-size: 26rpx;
  131. font-family: MicrosoftYaHei;
  132. text-align: left;
  133. color: #808080;
  134. }
  135. }
  136. .arrow-icon{
  137. }
  138. }
  139. }
  140. .split-g{
  141. width: 750rpx;
  142. height: 10rpx;
  143. background: #f5f5f5;
  144. }
  145. .split{
  146. width: 750rpx;
  147. height: 10rpx;
  148. background: #f5f5f5;
  149. margin-left: -30rpx;
  150. }
  151. .input-box{
  152. height: 90rpx;
  153. line-height: 90rpx;
  154. border-bottom: 1px solid #e6e6e6;
  155. display: flex;
  156. align-items: center;
  157. justify-content: space-between;
  158. .label{
  159. font-size: 28rpx;
  160. font-family: PingFang SC, PingFang SC-Regular;
  161. font-weight: 400;
  162. text-align: left;
  163. color: #1a1a1a;
  164. }
  165. .value{
  166. font-size: 28rpx;
  167. font-family: PingFang SC, PingFang SC-Regular;
  168. font-weight: 400;
  169. text-align: right;
  170. color: #666666;
  171. }
  172. }
  173. .content{
  174. padding: 0 30rpx;
  175. .shop-box{
  176. padding: 18rpx 0 30rpx 0;
  177. .title-box{
  178. border-bottom: 1px solid #e6e6e6;
  179. padding: 20rpx 0;
  180. .iconfont2{
  181. font-size: 35rpx;
  182. color: #057D53;
  183. margin-right: 15rpx;
  184. }
  185. text{
  186. font-size: 32rpx;
  187. font-weight: 400;
  188. color: #1a1a1a;
  189. }
  190. }
  191. .card{
  192. padding: 30rpx 0;
  193. border-bottom: 1px solid #e6e6e6;
  194. .cover{
  195. width: 200rpx;
  196. height: 200rpx;
  197. display: inline-block;
  198. vertical-align: top;
  199. margin-right: 17rpx;
  200. background-color: #f2f2f2;
  201. }
  202. .right{
  203. display: inline-block;
  204. width: 456rpx;
  205. .title{
  206. font-size: 24rpx;
  207. font-family: MicrosoftYaHei;
  208. text-align: left;
  209. color: #1a1a1a;
  210. line-height: 32rpx;
  211. margin-bottom: 10rpx;
  212. }
  213. .attr{
  214. font-size: 22rpx;
  215. font-family: PingFang SC, PingFang SC-Regular;
  216. font-weight: 400;
  217. text-align: left;
  218. color: #999999;
  219. margin-bottom: 10rpx;
  220. }
  221. .count{
  222. font-size: 26rpx;
  223. font-family: PingFang SC, PingFang SC-Regular;
  224. font-weight: 400;
  225. text-align: left;
  226. color: #999999;
  227. margin-bottom: 5rpx;
  228. }
  229. .price{
  230. font-size: 20rpx;
  231. font-family: PingFang SC, PingFang SC-Bold;
  232. font-weight: 700;
  233. text-align: left;
  234. color: #ff0000;
  235. .int{
  236. font-size: 38rpx;
  237. }
  238. }
  239. }
  240. }
  241. }
  242. .mark-box{
  243. font-size: 28rpx;
  244. font-family: PingFang SC, PingFang SC-Regular;
  245. font-weight: 400;
  246. text-align: left;
  247. color: #1a1a1a;
  248. margin-bottom: 30rpx;
  249. .title{
  250. margin: 30rpx 0 8rpx 0;
  251. }
  252. }
  253. .price-count{
  254. height: 108rpx;
  255. padding: 23rpx 0 0 0;
  256. font-size: 24rpx;
  257. font-family: PingFang SC, PingFang SC-Regular;
  258. font-weight: 400;
  259. text-align: right;
  260. color: #1a1a1a;
  261. .int{
  262. font-size: 32rpx;
  263. font-weight: bold;
  264. color: #FF0000;
  265. }
  266. .float{
  267. font-size: 24rpx;
  268. color: #FF0000;
  269. }
  270. }
  271. }
  272. }
  273. </style>