mine.vue 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313
  1. <template>
  2. <view class="page">
  3. <navbarLine :hasPlacer="false" bgColor="transparent"><view class="pageTitle">我的</view></navbarLine>
  4. <view class="p-header flex-col">
  5. <image src="/static/mine-bg.png" mode="aspectFill" class="bg"></image>
  6. <view class="flex-col section_1">
  7. <!-- -->
  8. <view class="flex-row group_2">
  9. <image src="/static/temp/avatar.png" class="image" />
  10. <view class="flex-col items-start group_3">
  11. <text class="nick clamp">向阳而生</text>
  12. <text class="mobile">159****9172</text>
  13. <view class="group_4">
  14. <text class="txt">累计减碳</text>
  15. <text class="txt active">1520</text>
  16. <text class="txt">克,已累计帮助捐赠</text>
  17. <text class="txt active">¥1.50</text>
  18. <text class="txt">来帮助食物浪费</text>
  19. </view>
  20. </view>
  21. </view>
  22. </view>
  23. <view class="flex-row equal-division">
  24. <view class="flex-col items-start equal-division-item">
  25. <text class="text_8">账户余额(元)</text>
  26. <text class="text_9 clamp">387.50</text>
  27. <view class="flex-col items-center text-wrapper"><text class="text_10">充值</text></view>
  28. </view>
  29. <view class="flex-col items-start equal-division-item_1">
  30. <text class="text_11">可用券</text>
  31. <text class="text_12 clamp">3</text>
  32. </view>
  33. </view>
  34. </view>
  35. <view class="p-content flex-col">
  36. <text class="title">会员服务</text>
  37. <view class="flex-row content-topwrap">
  38. <view class="flex-col items-center equal-division-item_2 group_5">
  39. <image src="/static/m-addr.png" class="image_1" />
  40. <text class="text_14">我的收藏</text>
  41. </view>
  42. <view class="flex-col items-center equal-division-item_2" @tap="navTo('/pages/address/address')">
  43. <image src="/static/m-addr.png" class="image_1" />
  44. <text class="text_14">收货地址</text>
  45. </view>
  46. <view class="flex-col items-center equal-division-item_2">
  47. <image src="/static/m-eva.png" class="image_1" />
  48. <text class="text_14">我的评价</text>
  49. </view>
  50. <view class="flex-col items-center equal-division-item_2">
  51. <image src="/static/m-shops.png" class="image_1" />
  52. <text class="text_14">商家入驻</text>
  53. </view>
  54. </view>
  55. <text class="text_19">其他服务</text>
  56. <view class="flex-row content-bomwrap">
  57. <view class="flex-col items-center equal-division-item_3" @tap="showShare">
  58. <image src="/static/m-wx.png" class="image_1" />
  59. <text class="text_20">关注公众号</text>
  60. </view>
  61. <view class="flex-col items-center equal-division-item_3">
  62. <image src="/static/m-kefu.png" class="image_1" />
  63. <text class="text_20">联系客服</text>
  64. </view>
  65. <view class="flex-col items-center equal-division-item_3">
  66. <image src="/static/m-feedback.png" class="image_1" />
  67. <text class="text_20">意见反馈</text>
  68. </view>
  69. </view>
  70. </view>
  71. <popup ref="shareRef">
  72. <view class="share-panel flex-col align-center">
  73. <image src="/static/temp/my-wx.png" mode="widthFix" class="img"></image>
  74. <text class="zicon zicon-quxiao1 ic" @tap="hideShare"></text>
  75. </view>
  76. </popup>
  77. <image src="/static/mine-bomimg.png" mode="aspectFill" class="bomimg"></image>
  78. </view>
  79. </template>
  80. <script>
  81. import navbarLine from '@/components/navbar-line.vue';
  82. export default {
  83. components: {
  84. navbarLine
  85. },
  86. data() {
  87. return {};
  88. },
  89. methods:{
  90. showShare(){
  91. this.$refs.shareRef.show();
  92. },
  93. hideShare(){
  94. this.$refs.shareRef.hide();
  95. }
  96. }
  97. };
  98. </script>
  99. <style lang="scss">
  100. page {
  101. background-color: #fff;
  102. }
  103. .pageTitle {
  104. position: absolute;
  105. left: 50%;
  106. top: 50%;
  107. transform: translate(-50%, -50%);
  108. color: #ffffff;
  109. font-size: 34rpx;
  110. font-family: PingFang;
  111. }
  112. .p-header {
  113. padding-bottom: 40rpx;
  114. height: 518rpx;
  115. position: relative;
  116. .bg{
  117. width: 750rpx;
  118. height: 518rpx;
  119. position: absolute;
  120. z-index: -1;
  121. }
  122. .section_1 {
  123. padding: 76rpx 43rpx 151rpx;
  124. // background: url(/static/mine-bg.png) no-repeat center/cover;
  125. }
  126. .group_2 {
  127. margin-top: 48rpx;
  128. }
  129. .image {
  130. flex-shrink: 0;
  131. width: 96rpx;
  132. height: 96rpx;
  133. }
  134. .group_3 {
  135. margin-left: 18rpx;
  136. margin-right: 40rpx;
  137. flex: 1 1 auto;
  138. }
  139. .nick {
  140. color: #ffffff;
  141. font-size: 32rpx;
  142. font-family: PingFang;
  143. letter-spacing: 1.28rpx;
  144. max-width: 512rpx;
  145. }
  146. .mobile {
  147. margin-top: 15rpx;
  148. color: #ffffff;
  149. font-size: 24rpx;
  150. font-family: PingFang;
  151. }
  152. .group_4 {
  153. margin-top: 12rpx;
  154. .txt {
  155. color: #ffffff;
  156. font-size: 20rpx;
  157. font-family: PingFang;
  158. &.active {
  159. font-weight: 700;
  160. }
  161. }
  162. }
  163. .equal-division {
  164. margin: -76rpx 30rpx 0;
  165. position: relative;
  166. }
  167. .equal-division-item {
  168. padding: 24rpx 25rpx 36rpx;
  169. flex: 1 1 335rpx;
  170. background-color: #ffffff;
  171. box-shadow: 0px 4rpx 18.4rpx 1.6rpx #2a2a2a1a;
  172. border-radius: 16rpx;
  173. position: relative;
  174. }
  175. .text_8 {
  176. color: #333333;
  177. font-size: 28rpx;
  178. font-family: PingFang;
  179. letter-spacing: 1.12rpx;
  180. }
  181. .text_9 {
  182. margin-top: 33rpx;
  183. color: #333333;
  184. font-size: 40rpx;
  185. font-family: PingFang;
  186. letter-spacing: 1.6rpx;
  187. max-width: 196rpx;
  188. }
  189. .text-wrapper {
  190. padding: 11rpx 0 14rpx;
  191. border-radius: 25rpx;
  192. width: 88rpx;
  193. position: absolute;
  194. right: 24rpx;
  195. top: 76rpx;
  196. border: solid 1rpx #92b99c;
  197. }
  198. .text_10 {
  199. color: #92b99c;
  200. font-size: 24rpx;
  201. font-family: PingFang;
  202. }
  203. .equal-division-item_1 {
  204. margin-left: 20rpx;
  205. padding: 23rpx 25rpx 36rpx;
  206. flex: 1 1 335rpx;
  207. background-color: #ffffff;
  208. box-shadow: 0px 4rpx 18.4rpx 1.6rpx #2a2a2a1a;
  209. border-radius: 16rpx;
  210. // height: 150rpx;
  211. }
  212. .text_11 {
  213. color: #333333;
  214. font-size: 28rpx;
  215. font-family: PingFang;
  216. letter-spacing: 1.12rpx;
  217. }
  218. .text_12 {
  219. margin-left: 4rpx;
  220. margin-top: 34rpx;
  221. color: #333333;
  222. font-size: 40rpx;
  223. font-family: PingFang;
  224. letter-spacing: 1.6rpx;
  225. max-width: 196rpx;
  226. }
  227. }
  228. .p-content {
  229. margin: 30rpx 30rpx 0;
  230. padding: 40rpx 0 50rpx;
  231. background-color: #ffffff;
  232. box-shadow: 0px 4rpx 18.4rpx 1.6rpx #2a2a2a1a;
  233. border-radius: 16rpx;
  234. .title {
  235. margin-left: 24rpx;
  236. align-self: flex-start;
  237. color: #333333;
  238. font-size: 34rpx;
  239. font-family: PingFang;
  240. letter-spacing: 1.36rpx;
  241. }
  242. .content-topwrap {
  243. margin-top: 50rpx;
  244. padding: 0 20rpx;
  245. }
  246. .equal-division-item_2 {
  247. margin-left: 14rpx;
  248. flex: 1 1 162rpx;
  249. padding: 9.5rpx 0 10rpx;
  250. }
  251. .group_5 {
  252. margin-left: 0;
  253. }
  254. .image_1 {
  255. width: 48rpx;
  256. height: 48rpx;
  257. }
  258. .text_14 {
  259. margin-top: 22.5rpx;
  260. color: #999999;
  261. font-size: 24rpx;
  262. font-family: PingFang;
  263. line-height: 23rpx;
  264. }
  265. .text_19 {
  266. margin-left: 25rpx;
  267. margin-top: 70rpx;
  268. align-self: flex-start;
  269. color: #333333;
  270. font-size: 34rpx;
  271. font-family: PingFang;
  272. line-height: 32rpx;
  273. letter-spacing: 1.36rpx;
  274. }
  275. .content-bomwrap {
  276. margin-left: 14.5rpx;
  277. margin-top: 50rpx;
  278. align-self: flex-start;
  279. }
  280. .equal-division-item_3 {
  281. flex: 1 1 162rpx;
  282. padding: 9rpx 0 10rpx;
  283. width: 162rpx;
  284. }
  285. .text_20 {
  286. margin-top: 24rpx;
  287. color: #999999;
  288. font-size: 24rpx;
  289. font-family: PingFang;
  290. line-height: 23rpx;
  291. }
  292. }
  293. .share-panel{
  294. .img{
  295. width: 600rpx;
  296. height: 679rpx;
  297. border-radius: 20rpx;
  298. }
  299. .ic{
  300. margin: 30rpx auto 0;
  301. color:#000;
  302. font-size: 46rpx;
  303. }
  304. }
  305. .bomimg{
  306. width: 244rpx;
  307. height: 86rpx;
  308. margin: 100rpx auto 30rpx;
  309. }
  310. </style>