settings.vue 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. <template>
  2. <view>
  3. <uni-nav-bar id="nav-bar" status-bar="true" @clickLeft="onBack()" :title="title" color="#000000" fixed="true"
  4. :border="false">
  5. <view slot="left">
  6. <view class=" flex align-center margin-left">
  7. <image class="p-left-arrow" src="../../../static/p-left-arrow.png"></image>
  8. </view>
  9. </view>
  10. </uni-nav-bar>
  11. <view class="card-view settings-item" v-for="(item,index) in list" :key="index">
  12. <view class="content position-relative" @tap="onNavTo(item)">
  13. <text class="text-black text-regular text-16px margin-left-xl">{{item.gameName}}</text>
  14. <view v-if="index == 0" class="position-absolute-center">
  15. <view class="text-gray" style="text-align: end;margin-right: 88rpx; line-height: 100rpx;">
  16. {{setPasswordFirstTime?'未设置':'已设置'}}
  17. </view>
  18. </view>
  19. <view class="only-arrow"></view>
  20. </view>
  21. </view>
  22. </view>
  23. </template>
  24. <script>
  25. import reqUtil from "@/util/util-js/requstUtil.js"
  26. import config from "@/common/config.js"
  27. import {
  28. mapState
  29. } from 'vuex';
  30. export default {
  31. computed: mapState(['platform', 'gamePlatform', 'setPasswordFirstTime', 'phoneNumber', 'mailboxNumber']),
  32. data() {
  33. return {
  34. list: [{
  35. gameName: '设置密码',
  36. navType: 'password'
  37. }, {
  38. gameName: '新手指导',
  39. navType: 'guide'
  40. }, {
  41. gameName: '意见反馈',
  42. navType: 'feedback'
  43. }],
  44. title: "设置",
  45. type: '',
  46. page: 1,
  47. size: 10,
  48. bDontUpdate: false
  49. }
  50. },
  51. onLoad(option) {
  52. },
  53. methods: {
  54. onBack() {
  55. uni.navigateBack({
  56. delta: 1
  57. })
  58. },
  59. onNavTo(item) {
  60. // console.log(item);
  61. let url = '';
  62. switch (item.navType) {
  63. case 'password':
  64. if (this.phoneNumber == '' && this.mailboxNumber == '') {
  65. uni.showToast({
  66. icon: 'none',
  67. title: '请先点击头像进绑定手机\r\n或邮箱才可以设置密码!',
  68. duration: 3000,
  69. mask: true
  70. })
  71. return;
  72. }
  73. //todo 判断密码是否已经设置。如果没有,进入设置密码,如果已经设置了,进入修改密码;
  74. url = '/pages/login-page/pwd/pwd?bModify=' + !this.setPasswordFirstTime;
  75. break;
  76. case 'guide':
  77. url = '/pages/platform-page/guide/guide';
  78. break;
  79. case 'feedback':
  80. url = '/pages/login-page/feedback/feedback';
  81. break;
  82. }
  83. uni.navigateTo({
  84. url: url,
  85. success: res => {},
  86. fail: () => {},
  87. complete: () => {}
  88. });
  89. }
  90. }
  91. }
  92. </script>
  93. <style>
  94. .content {
  95. display: flex;
  96. flex-direction: row;
  97. align-items: center;
  98. height: 50px;
  99. }
  100. .settings-item {
  101. position: relative;
  102. background-color: #FFFFFF;
  103. border-radius: 10px;
  104. }
  105. </style>