set.vue 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. <template>
  2. <view class="container">
  3. <uni-list>
  4. <uni-list-item title="个人资料" @click="navTo('/pages/set/userinfo')"></uni-list-item>
  5. <uni-list-item title="收货地址" @click="navTo('/pages/set/address')"></uni-list-item>
  6. <uni-list-item title="交易密码" @click="navTo('/pages/money/moneyPwd')"></uni-list-item>
  7. <uni-list-item title="修改登录密码" @click="navTo('/pages/public/forget')"></uni-list-item>
  8. <uni-list-item title="注销账户" @click="detailPhone()"></uni-list-item>
  9. </uni-list>
  10. <view class="list-cell log-out-btn" @click="toLogout"><text class="cell-tit">退出登录</text></view>
  11. </view>
  12. </template>
  13. <script>
  14. import uniList from '@/components/uni-list/uni-list.vue';
  15. import uniListItem from '@/components/uni-list-item/uni-list-item.vue';
  16. import { logout } from '@/api/set.js';
  17. import { mapMutations } from 'vuex';
  18. export default {
  19. components: {
  20. uniList,
  21. uniListItem
  22. },
  23. data() {
  24. return {};
  25. },
  26. methods: {
  27. ...mapMutations('user', ['logout']),
  28. detailPhone(){
  29. uni.showModal({
  30. title: '提示',
  31. content: '账号注销后无法恢复是否申请注销',
  32. success: res => {
  33. uni.showModal({
  34. title: '请输入注销理由',
  35. editable:true,
  36. success: res => {
  37. uni.showLoading({})
  38. setTimeout(()=>{
  39. uni.hideLoading()
  40. uni.showModal({
  41. title: '提示',
  42. content: '账号注销申请已提交,如需要取消注销请三个工作日内联系管理员,三个工作日后该账户将无法使用且无法恢复',
  43. showCancel:false
  44. });
  45. },1000)
  46. },
  47. });
  48. },
  49. });
  50. },
  51. navTo(url) {
  52. uni.navigateTo({
  53. url: url
  54. });
  55. },
  56. //退出登录
  57. toLogout() {
  58. let obj = this;
  59. uni.showModal({
  60. content: '确定要退出登录么',
  61. success: e => {
  62. if (e.confirm) {
  63. logout({})
  64. .then(e => {
  65. uni.navigateBack();
  66. })
  67. .catch(e => {
  68. console.log(e);
  69. });
  70. obj.logout();
  71. }
  72. }
  73. });
  74. },
  75. //switch切换触发方法
  76. switchChange(e) {
  77. console.log(e);
  78. let statusTip = e.value ? '打开' : '关闭';
  79. this.$api.msg(`${statusTip}消息推送`);
  80. }
  81. }
  82. };
  83. </script>
  84. <style lang="scss">
  85. page {
  86. background: $page-color-base;
  87. }
  88. .list-cell {
  89. display: flex;
  90. align-items: baseline;
  91. padding: 20rpx $page-row-spacing;
  92. line-height: 60rpx;
  93. position: relative;
  94. background: #fff;
  95. justify-content: center;
  96. &.log-out-btn {
  97. margin-top: 40rpx;
  98. .cell-tit {
  99. color: $base-color;
  100. text-align: center;
  101. margin-right: 0;
  102. }
  103. }
  104. .cell-tit {
  105. flex: 1;
  106. font-size: $font-base + 2rpx;
  107. color: $font-color-dark;
  108. margin-right: 10rpx;
  109. }
  110. .cell-tip {
  111. font-size: $font-base;
  112. color: $font-color-light;
  113. }
  114. switch {
  115. transform: translateX(16rpx) scale(0.84);
  116. }
  117. }
  118. </style>