index.vue 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. <template>
  2. <view class="container">
  3. <navBar title="个人资料" :back="true" color="#333333" background="#FFFFFF" />
  4. <view class="outerBox">
  5. <view class="upBox">
  6. <image v-if="userInfo.avatar" :src="userInfo.avatar" mode="" class="upIcon" @click="upload"></image>
  7. <image v-else :src="picBase+'upCamera.png'" mode="heightFix" class="upIcon1" @click="upload"></image>
  8. </view>
  9. <view class="label">
  10. 推荐奖励
  11. </view>
  12. <view class="editBox">
  13. <view class="item">
  14. <view class="left">
  15. 昵称
  16. </view>
  17. <view class="right">
  18. <input type="text" placeholder="请输入昵称" v-model="userInfo.nackname" />
  19. <image :src="picBase+'edit2.png'" mode="heightFix" class="editIcon"></image>
  20. </view>
  21. </view>
  22. <view class="item">
  23. <view class="left">
  24. 手机号
  25. </view>
  26. <view class="right">
  27. <input type="number" placeholder="请输入手机号" v-model="userInfo.phone" />
  28. <image :src="picBase+'edit2.png'" mode="heightFix" class="editIcon"></image>
  29. </view>
  30. </view>
  31. <view class="item">
  32. <view class="left">
  33. ID号
  34. </view>
  35. <view class="right">
  36. {{userInfo.id}}
  37. </view>
  38. </view>
  39. </view>
  40. <view class="btnBox">
  41. <view class="btn b1">
  42. 保存修改
  43. </view>
  44. <view class="btn b2" @click="logoOut">
  45. 退出登录
  46. </view>
  47. </view>
  48. </view>
  49. </view>
  50. </template>
  51. <script>
  52. // import navBar from '@/components/navBar/index.vue'
  53. import uploadUrl from '@/common/config.js'
  54. export default {
  55. // components: {
  56. // navBar
  57. // },
  58. data() {
  59. return {
  60. picBase: this.$picBase2,
  61. userInfo: {
  62. // avatar: this.$picBase2 + 'logo.png',
  63. avatar: '',
  64. nackname: '海绵宝',
  65. phone: '10928309109',
  66. id: '237429302'
  67. },
  68. mode: 0
  69. }
  70. },
  71. onLoad() {
  72. },
  73. methods: {
  74. logoOut() {
  75. uni.showModal({
  76. title: '提示',
  77. content: '确认退出登录?',
  78. confirmColor: '#017AFF',
  79. success: function(res) {
  80. if (res.confirm) {
  81. uni.removeStorageSync('token')
  82. uni.reLaunch({
  83. url: '/pages/my/index'
  84. })
  85. } else if (res.cancel) {
  86. console.log('用户点击取消');
  87. }
  88. }
  89. });
  90. },
  91. upload() {
  92. let _this = this
  93. uni.chooseImage({
  94. count: 1,
  95. success(res) {
  96. console.log('res', res.tempFilePaths[0]);
  97. _this.upImg(res.tempFilePaths[0])
  98. }
  99. })
  100. },
  101. upImg(file) {
  102. console.log('upImg的file', file)
  103. let _this = this
  104. uni.uploadFile({
  105. url: uploadUrl.baseUrl + '/api/upload',
  106. filePath: file,
  107. name: 'file',
  108. header: {
  109. 'Content-Type': 'multipart/form-data'
  110. },
  111. formData: {
  112. 'fileType': 'images',
  113. 'dirName': 'cert',
  114. 'tag': 'lamp'
  115. },
  116. success: function(uploadRes) {
  117. let result = JSON.parse(uploadRes.data)
  118. if (result.code == 0) {
  119. _this.userInfo.avatar = result.data.file
  120. console.log('上传后的头像url地址', result.data.file)
  121. }
  122. },
  123. fail: function(err) {
  124. console.log('upload failed:', err)
  125. }
  126. })
  127. },
  128. }
  129. }
  130. </script>
  131. <style lang="scss" scoped>
  132. @import "./index.scss";
  133. </style>