index.vue 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <template>
  2. <div class="layout">
  3. <!-- <div class="fixed-mask"></div> -->
  4. <HeadCpt></HeadCpt>
  5. <router-view v-slot="{ Component }">
  6. <component :is="Component"></component>
  7. </router-view>
  8. <SidebarCpt></SidebarCpt>
  9. <LoginModal v-if="appStore.showLoginModal"></LoginModal>
  10. <!-- <img
  11. class="pay-course"
  12. src="@/assets/img/pay-course.webp"
  13. alt=""
  14. @click="openToTarget(COMMON_URL.payCoursesArticle)"
  15. /> -->
  16. <PayCourse></PayCourse>
  17. </div>
  18. </template>
  19. <script lang="ts" setup>
  20. import { useAppStore } from '@/store/app';
  21. import HeadCpt from './head/index.vue';
  22. import SidebarCpt from './sidebar/index.vue';
  23. document.body.style.minWidth = '1200px';
  24. const appStore = useAppStore();
  25. </script>
  26. <style lang="scss" scoped>
  27. .layout {
  28. box-sizing: border-box;
  29. padding-top: $header-height;
  30. min-height: 100vh;
  31. .fixed-mask {
  32. position: fixed;
  33. top: 0;
  34. right: 0;
  35. z-index: 50;
  36. width: 400px;
  37. height: 300px;
  38. background-color: #ffd700;
  39. background-image: linear-gradient(239deg, #ffd700 0%, #ffffff 100%);
  40. opacity: 0.2;
  41. filter: blur(70px);
  42. pointer-events: none;
  43. }
  44. }
  45. </style>