index-banner.vue 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <template>
  2. <view class="shadow-card mx-30 bg-white overflow-hidden rounded-17 p-2">
  3. <ie-image :is-oss="true" src="/banner/index-banner-1.png" custom-class="w-full min-h-264 overflow-hidden"
  4. :round="15" />
  5. <view class="pt-24 pb-40 bg-white grid grid-cols-4 gap-y-32 justify-items-center">
  6. <view class="w-fit" v-for="item in menus" :key="item.name" @click="navigateTo(item.pageUrl, item.navigateType)">
  7. <ie-image :is-oss="true" custom-class="w-auto h-82" :round="10" :src="item.icon" mode="heightFix" />
  8. <view class="text-26 text-fore-title">{{ item.name }}</view>
  9. </view>
  10. </view>
  11. </view>
  12. <view class="mx-30 mt-36">
  13. <ie-image :is-oss="true" src="/banner/index-banner-2.png" custom-class="w-full min-h-180 bg-back" :round="15" />
  14. </view>
  15. </template>
  16. <script lang="ts" setup>
  17. import { useTransferPage } from '@/hooks/useTransferPage';
  18. const { transferTo } = useTransferPage();
  19. const menus = [
  20. {
  21. name: '学习备考',
  22. icon: '/menu/menu-study.png',
  23. pageUrl: '/pagesStudy/pages/index/index',
  24. },
  25. {
  26. name: '志愿填报',
  27. icon: '/menu/menu-volunteer.png',
  28. pageUrl: '/pagesMain/pages/volunteer/volunteer',
  29. navigateType: 'switchTab',
  30. },
  31. {
  32. name: '找院校',
  33. icon: '/menu/menu-college.png',
  34. pageUrl: '/pagesOther/pages/college-library/index/index',
  35. },
  36. {
  37. name: '查专业',
  38. icon: '/menu/menu-major.png',
  39. pageUrl: '/pagesOther/pages/major-library/index/index',
  40. },
  41. {
  42. name: '看职业',
  43. icon: '/menu/menu-work.png',
  44. pageUrl: '/pagesOther/pages/vocation-library/index/index',
  45. },
  46. {
  47. name: '自我测评',
  48. icon: '/menu/menu-test.png',
  49. pageUrl: '/pagesOther/pages/test-center/index/index',
  50. },
  51. {
  52. name: '单招资讯',
  53. icon: '/menu/menu-news.png',
  54. pageUrl: '/pagesOther/pages/news/index/index',
  55. },
  56. {
  57. name: '专升本',
  58. icon: '/menu/menu-upgrade.png',
  59. pageUrl: '/pages/index/index',
  60. }
  61. ]
  62. const navigateTo = (pageUrl: string, navigateType?: string) => {
  63. transferTo(pageUrl, {
  64. type: navigateType || 'navigate',
  65. });
  66. }
  67. </script>
  68. <style lang="scss" scoped></style>