index.vue 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <template>
  2. <v-container>
  3. <v-row>
  4. <v-col cols="2">
  5. <v-sheet rounded="lg">
  6. <v-list color="transparent">
  7. <router-link :to="`/user/home`">
  8. <!--<router-link :to="`/u/${this.$store.state.user.userInfo.userId}`">-->
  9. <v-row justify="center" align="center">
  10. <v-col cols="12" style="text-align: center">
  11. <v-avatar size="62">
  12. <v-img :src="this.$store.state.user.userInfo.avatarUrl" />
  13. </v-avatar>
  14. </v-col>
  15. </v-row>
  16. <v-row justify="center" align="center">
  17. <v-col cols="12" style="text-align: center">
  18. {{ this.$store.state.user.userInfo.username }}
  19. </v-col>
  20. </v-row>
  21. </router-link>
  22. <router-link v-for="item in items" :key="item.text" :to="item.link">
  23. <v-list-item
  24. link
  25. >
  26. <v-list-item-action>
  27. <v-icon>{{ item.icon }}</v-icon>
  28. </v-list-item-action>
  29. <v-list-item-content>
  30. <v-list-item-title>
  31. {{ item.text }}
  32. </v-list-item-title>
  33. </v-list-item-content>
  34. </v-list-item>
  35. </router-link>
  36. <v-divider class="my-2" />
  37. <v-list-item
  38. link
  39. color="grey lighten-4"
  40. >
  41. <v-list-item-content>
  42. <v-list-item-title>
  43. Refresh
  44. </v-list-item-title>
  45. </v-list-item-content>
  46. </v-list-item>
  47. </v-list>
  48. </v-sheet>
  49. </v-col>
  50. <v-col>
  51. <v-sheet
  52. min-height="70vh"
  53. rounded="lg"
  54. >
  55. <router-view />
  56. </v-sheet>
  57. </v-col>
  58. </v-row>
  59. </v-container>
  60. </template>
  61. <script>
  62. import CheckPower from '@/utils/check-power.vue'
  63. export default {
  64. data: () => ({
  65. CheckPower,
  66. drawer: true,
  67. items: [
  68. { icon: 'mdi-filmstrip-box-multiple', text: '稿件列表', link: '/studio' },
  69. { icon: 'mdi-upload', text: '投稿', link: '/studio/upload' },
  70. { icon: 'mdi-database', text: '数据统计', link: '/studio/statistics' }
  71. ],
  72. adminList: [
  73. { icon: 'mdi-playlist-edit', text: '分类管理', link: '/studio/admin/category' },
  74. { icon: 'mdi-application', text: '邀请码', link: '/studio/admin/invitation' },
  75. { icon: 'mdi-video', text: '待审核', link: '/studio/admin/examine' },
  76. { icon: 'mdi-filmstrip-box-multiple', text: '投稿列表', link: '/studio/admin/article/list' },
  77. { icon: 'mdi-file', text: '文件列表', link: '/studio/admin/file/list' },
  78. { icon: 'mdi-account-multiple', text: '用户列表', link: '/studio/admin/userlist' },
  79. { icon: 'mdi-square-edit-outline', text: '网页设置', link: '/studio/admin/websetting' }
  80. ]
  81. }),
  82. mounted() {
  83. },
  84. created() {
  85. },
  86. methods: {
  87. }
  88. }
  89. </script>
  90. <style scoped>
  91. a {
  92. text-decoration: none;
  93. }
  94. </style>