user.vue 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. <template>
  2. <view>
  3. <view class="user-header" v-if="userInfo">
  4. <view class="avatar-btn">
  5. <image :src="userInfo?userInfo.avatar:'https://inmei-print.oss-cn-guangzhou.aliyuncs.com/logo.png'"></image>
  6. </view>
  7. <view class="user-info">
  8. <view class="name">{{userInfo.nickname}}</view>
  9. </view>
  10. </view>
  11. <view class="user-header" v-else>
  12. <view class="avatar-btn">
  13. <image src="https://inmei-print.oss-cn-guangzhou.aliyuncs.com/logo.png"></image>
  14. </view>
  15. <view class="user-info">
  16. <view class="name" @click="toLogin">请先登录</view>
  17. </view>
  18. </view>
  19. <view class="user-menu">
  20. <!-- <view class="menu-item">
  21. <view class="icon"><image src="/static/image/info.png"></image></view>
  22. <view class="name">个人信息</view>
  23. <view class="right"><image src="/static/image/right.png"></image></view>
  24. </view>
  25. <view class="menu-item">
  26. <view class="icon"><image src="/static/image/address.png"></image></view>
  27. <view class="name">会员地址</view>
  28. <view class="right"><image src="/static/image/right.png"></image></view>
  29. </view>
  30. <view class="menu-item" @click="showService()">
  31. <view class="icon"><image src="/static/image/service.png"></image></view>
  32. <view class="name">客服</view>
  33. <view class="right"><image src="/static/image/right.png"></image></view>
  34. </view> -->
  35. <navigator hover-class="none" class="menu-item" url="/pages/user/license">
  36. <view class="icon"><image src="/static/image/zizhi.png"></image></view>
  37. <view class="name">服务资质</view>
  38. <view class="right"><image src="/static/image/right.png"></image></view>
  39. </navigator>
  40. <view class="menu-item" @click="outLogin">
  41. <view class="icon"><image src="/static/image/out.png"></image></view>
  42. <view class="name">退出</view>
  43. <view class="right"><image src="/static/image/right.png"></image></view>
  44. </view>
  45. </view>
  46. </view>
  47. </template>
  48. <script>
  49. var app;
  50. export default {
  51. data() {
  52. return {
  53. userInfo:null,
  54. storeData:{}
  55. }
  56. },
  57. onShow() {
  58. var userInfo = uni.getStorageSync("user_data")
  59. if (userInfo) {
  60. this.userInfo = userInfo;
  61. }
  62. },
  63. onLoad() {
  64. app = this;
  65. app.storeData = uni.getStorageSync("contact");
  66. },
  67. methods: {
  68. outLogin(order){
  69. app.$dialog.showError("确定要退出登录吗",function(res){
  70. if (res.confirm) {
  71. app.userInfo = null;
  72. uni.clearStorageSync();
  73. }
  74. })
  75. },
  76. callMobile(mobile){
  77. uni.makePhoneCall({
  78. phoneNumber:mobile,
  79. success(res) {
  80. console.log(res)
  81. },fail(res) {
  82. console.log(res)
  83. }
  84. })
  85. },
  86. showService(){
  87. }
  88. }
  89. }
  90. </script>
  91. <style>
  92. page{background-color: #f8f8f8;}
  93. .user-header{background-color: #005bac;padding: 40upx;display: flex;align-items: center;background: linear-gradient(to right, #094d89, #007aff);width: calc(95% - 80upx);margin: 40upx auto;border-radius: 10upx;}
  94. .user-header image{width: 100upx;height: 100upx;border-radius: 100upx;}
  95. .user-header .user-info{margin-left: 20upx;}
  96. .user-header .name{font-size: 32upx;color: #fff;}
  97. .user-header .desc{font-size: 24upx;color: #f8f8f8;margin-top: 20upx;}
  98. .user-menu{width: 95%;margin: 40upx auto;border-radius: 10upx;background-color: #fff;}
  99. .user-menu .menu-item{height: 100upx;line-height: 100upx;display: flex;align-items: center;font-size: 28upx;color: #333;padding: 0 20upx;border-bottom: 2upx solid #f8f8f8;}
  100. .user-menu .menu-item .icon{margin-right: 20upx;display: flex;align-items: center;justify-content: center;}
  101. .user-menu .menu-item .right{margin-right: 0;margin-left: auto;}
  102. .user-menu .menu-item .icon image{width: 40upx;height: 40upx;}
  103. .user-menu .menu-item .right image{width: 40upx;height: 40upx;}
  104. .service-popup .item{height: 100upx;line-height: 100upx;text-align: center;font-size: 28upx;color: #333;border-bottom: 2upx solid #f8f8f8;}
  105. .service-popup .item .btn{background-color: #fff;border: 0;height: 100upx;line-height: 100upx;text-align: center;font-size: 28upx;color: #333;}
  106. .service-popup .item .btn::after{border: 0;}
  107. .service-popup .foot{height: 100upx;line-height: 100upx;text-align: center;font-size: 28upx;color: #333;border-top: 20upx solid #f8f8f8;}
  108. </style>