index.vue 783 B

123456789101112131415161718192021222324252627282930313233
  1. <template>
  2. <div class="slide">
  3. <!-- {{ routes }} -->
  4. <el-menu
  5. :default-active="(router.currentRoute.value.name as string)"
  6. @select="(name: string) => router.push({ name })"
  7. >
  8. <sub-menu
  9. :meta="route.meta"
  10. :name="route.name"
  11. v-for="route in routes"
  12. :key="route.name"
  13. />
  14. </el-menu>
  15. </div>
  16. </template>
  17. <script setup lang="ts">
  18. import subMenu from "./submenu.vue";
  19. import { getPermissionRoutes } from "@/store/permission";
  20. import { RouteName, router } from "@/router";
  21. import { FireRouteName } from "@/app/fire/routeConfig";
  22. const props = defineProps<{ names: string[] }>();
  23. const routes = getPermissionRoutes(props.names, []);
  24. </script>
  25. <style lang="scss" scoped>
  26. .slide {
  27. background: #ffffff;
  28. }
  29. </style>