App.vue 787 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. <template>
  2. <n-config-provider :theme="theme" :themeOverrides="themeOverrides">
  3. <div class="page" :class="routeName">
  4. <router-view />
  5. </div>
  6. </n-config-provider>
  7. </template>
  8. <script setup>
  9. import { computed, ref } from "vue";
  10. import { themeOverrides } from "./theme/override.js";
  11. import { darkTheme } from "naive-ui";
  12. import { useRouter } from "vue-router";
  13. const router = useRouter();
  14. const routeName = ref();
  15. const theme = ref(null);
  16. router.beforeEach((to, from, next) => {
  17. document.title = to.meta.title;
  18. routeName.value = to.name;
  19. next();
  20. });
  21. </script>
  22. <style scoped>
  23. .layout,
  24. .n-config-provider {
  25. height: 100%;
  26. }
  27. .n-layout-scroll-container {
  28. overflow: hidden;
  29. }
  30. .main {
  31. width: 100%;
  32. height: 100%;
  33. display: flex;
  34. flex-direction: row;
  35. }
  36. </style>