Settings.vue 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. <template>
  2. <LayoutExperience>
  3. <ContentContainer :containerStyle="content_style">
  4. <div class="settings-container">
  5. <div class="settings-aside-menu-container">
  6. <a-menu :style="{ width: '200px', borderRadius: '4px' }" @menu-item-click="handleMenuClick">
  7. <!-- <a-menu-item key="/settings/profile">修改资料</a-menu-item> -->
  8. <a-menu-item key="/settings/global">
  9. <template #icon>
  10. <icon-file />
  11. </template>
  12. {{ $t('settings.global') }}
  13. </a-menu-item>
  14. <a-menu-item key="/settings/password">
  15. <template #icon>
  16. <icon-lock />
  17. </template>
  18. {{ $t('settings.password') }}
  19. </a-menu-item>
  20. <!-- <a-menu-item key="/settings/phone">绑定电话号码</a-menu-item> -->
  21. <!-- <a-menu-item key="/settings/email">绑定邮箱</a-menu-item> -->
  22. <!-- <a-menu-item key="1_0">logo设置</a-menu-item> -->
  23. <!-- <a-menu-item key="1_1">主题设置</a-menu-item> -->
  24. <!-- <a-menu-item key="1_2">多语言设置</a-menu-item> -->
  25. </a-menu>
  26. </div>
  27. <div class="settings-main-content-container">
  28. <router-view></router-view>
  29. </div>
  30. </div>
  31. </ContentContainer>
  32. </LayoutExperience>
  33. </template>
  34. <script setup>
  35. import { ref } from 'vue';
  36. import { useRouter } from 'vue-router';
  37. import LayoutExperience from './layout/LayoutExperience.vue';
  38. import ContentContainer from './layout/ContentContainer.vue';
  39. import bg_image from '../assets/chat/board-bg.png';
  40. const router = useRouter();
  41. const content_style = {
  42. // backgroundImage: `url(${bg_image})`,
  43. backgroundRepeat: 'no-repeat',
  44. backgroundSize: 'contain'
  45. };
  46. const collapsed = ref(false);
  47. const handleMenuClick = (key) => {
  48. router.push({
  49. path: key
  50. });
  51. };
  52. </script>
  53. <style scoped>
  54. .settings-container {
  55. display: flex;
  56. justify-content: flex-start;
  57. }
  58. .settings-aside-menu-container {
  59. box-sizing: border-box;
  60. background-color: var(--color-menu-light-bg);
  61. padding: 10px;
  62. height: calc(100vh - 90px);
  63. }
  64. .settings-main-content-container {
  65. box-sizing: border-box;
  66. background-color: var(--color-fill-1);
  67. flex-grow: 1;
  68. padding: 15px;
  69. height: calc(100vh - 90px);
  70. }
  71. </style>