您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

setting.vue 2.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. <template>
  2. <template v-for="(col,index) in list" :key="index">
  3. <view class="title">{{col.title}}</view>
  4. <u-cell-group>
  5. <u-cell-item :title="item.title" v-for="(item,i) in col.columns" :key="i"
  6. @click="itemClick(item)" :titleStyle="titleStyle" borderBottom></u-cell-item>
  7. </u-cell-group>
  8. </template>
  9. <button class="action" @click="loginOut">退出登录</button>
  10. </template>
  11. <script setup lang="ts">
  12. import {useUserStore} from '@/stores/user';
  13. import { msg, navTo } from '@/utils/utils';
  14. const userStore = useUserStore();
  15. const {loginOut} = userStore;
  16. const titleStyle = {fontSize:'28rpx',color:'#333333'};
  17. const basePath = "/subpackage/personal-center/setting/";
  18. const list = [
  19. {
  20. title:'个人信息管理',
  21. columns:[
  22. {title:'个人信息更正',path:'personal-information/corrections',login:true},
  23. {title:'个人信息删除',path:'information-deletion',login:true},
  24. {title:'权限管理',path:'permission-management',login:true},
  25. // {title:'撤销权限管理',path:'revoke-permission',login:true}, //无 UI
  26. {title:'信息副本导出',path:'info-export',login:true}, //无 UI
  27. {title:'注销账户',path:'account-cancellation',login:true},
  28. {title:'车辆信息管理',path:'car-information/corrections',login:true}, //无 UI
  29. {title:'收货地址管理',path:'addressManager',login:true}, //有 UI 无界面
  30. // {title:'银行卡',path:'bank-card/bank-card',login:true},//有 UI 无界面
  31. ]
  32. },
  33. {
  34. title:'隐私',
  35. columns:[
  36. {title:'用户协议',path:'user-agreement',login:true},//无 UI
  37. {title:'隐私政策',path:'conceal-agreement',login:true},//无 UI
  38. {title:'风险提示告知书',path:'risk-agreement',login:true},//无 UI
  39. {title:'个人信息收集清单',path:'info_connect',login:true},//无 UI
  40. {title:'权限使用说明',path:'usage-instructions',login:true}//无 UI
  41. ]
  42. },
  43. ]
  44. /* item点击 */
  45. const itemClick = (item) => {
  46. if(!item.path){
  47. msg('找不到该界面哦!');
  48. return;
  49. }
  50. navTo(basePath + item.path,item.login);
  51. }
  52. </script>
  53. <style>
  54. page{
  55. background: #EEF7F7;
  56. padding-bottom: 100rpx;
  57. }
  58. </style>
  59. <style lang="scss" scoped>
  60. .title {
  61. font-size: 26rpx;
  62. font-family: Microsoft YaHei;
  63. font-weight: 400;
  64. color: #666666;
  65. height: 80rpx;
  66. padding-top: 30rpx;
  67. padding-left: 30rpx
  68. }
  69. .action {
  70. margin-top: 30rpx;
  71. font-size: 28rpx;
  72. font-family: Microsoft YaHei;
  73. font-weight: 400;
  74. color: #333333;
  75. line-height: 88rpx;
  76. height: 88rpx;
  77. background: #FFFFFF;
  78. box-shadow: 0rpx 4rpx 11rpx 1rpx rgba(223,223,223,0.5);
  79. }
  80. </style>