physics.uvue 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <script setup lang='ts'>
  2. import { ref } from 'vue'
  3. import { router } from '@/.cool'
  4. import { user } from '@/.cool'
  5. const visible = ref(false)
  6. function handleView(url) {
  7. router.push({ path: url })
  8. }
  9. function openPopup() {
  10. visible.value = true
  11. }
  12. </script>
  13. <template>
  14. <view class="bottom">
  15. <view class=" progress">
  16. <view class="text-[22px] font-bold">学习进度 {{ user.info.value?.studyCourseNum || 0 }}/100</view>
  17. <view class=" w-full flex flex-row items-center justify-center gap-2">
  18. <cl-progress class="flex-1" color="linear-gradient(0deg, #1FA5F5 37%, #A2D8FF 100%)"
  19. :value="user.info.value?.studyCourseNum" :show-text="false" :strokeWidth="16"
  20. :pt="{ outer: { className: '!rounded-full' }, inner: { className: '!rounded-full' } }"></cl-progress>
  21. </view>
  22. </view>
  23. <view
  24. @tap="handleView('/pages/test/index')">
  25. <cl-image src="https://oss.xiaoxiongcode.com/static/home/113.png" mode="heightFix" width="auto" height="80px" />
  26. <!-- <text class="text-[14px]">趣味虚拟实验</text> -->
  27. </view>
  28. <view
  29. @tap="handleView('/pages/card/index')">
  30. <cl-image src="https://oss.xiaoxiongcode.com/static/home/112.png" mode="heightFix" width="auto" height="80px" />
  31. <!-- <text class="text-[14px]">我的收获</text> -->
  32. </view>
  33. <!-- <view class="flex-1 flex flex-col items-center justify-between gap-1 bg3 py-3" @tap="openPopup">
  34. <cl-image src="https://oss.xiaoxiongcode.com/static/home/18.png" mode="widthFix" width="35%" height="auto" />
  35. <text class="text-[14px]">AI问答</text>
  36. </view> -->
  37. </view>
  38. <view class="content" @tap="handleView('/pages/catalog/index')">
  39. <cl-image src="https://oss.xiaoxiongcode.com/static/home/3.gif" mode="heightFix" height="100%" width="auto" />
  40. <view class="flex-1 flex flex-col items-center justify-center gap-2 ft">
  41. <view class="text-[10vh] font-bold">
  42. 启蒙物理AI课
  43. </view>
  44. <view class="h-[15vh]">
  45. <cl-image src="https://oss.xiaoxiongcode.com/static/home/play.png" mode="heightFix" height="100%"
  46. width="auto" />
  47. </view>
  48. </view>
  49. </view>
  50. </template>
  51. <style lang="scss" scoped>
  52. .bottom {
  53. @apply absolute bottom-[1vh] left-1/2 w-full max-w-[600px] rounded-[20px] px-10 py-1 flex flex-row items-center justify-between gap-5;
  54. transform: translateX(-50%);
  55. .progress {
  56. @apply w-[400px] h-[80px] rounded-[40px] flex justify-center gap-2 px-[30px] gap-3;
  57. background: linear-gradient(0deg, #AAE3FF 0%, #DFF4FD 100%);
  58. width: 50%;
  59. }
  60. .check {
  61. background: linear-gradient(0deg, #FBD00E 0%, #FBEC92 100%);
  62. line-height: 20px;
  63. }
  64. }
  65. .bg1 {
  66. background: linear-gradient(0deg, #7597FA 0%, #C1DAFF 100%);
  67. border-radius: 28px;
  68. height: 80px;
  69. }
  70. .bg2 {
  71. background: linear-gradient(0deg, #3CD3DE 0%, #ADFBFF 100%);
  72. border-radius: 28px;
  73. height: 80px;
  74. }
  75. .bg3 {
  76. background: linear-gradient(0deg, #FFCE4A 0%, #FFEC88 100%);
  77. border-radius: 28px;
  78. height: 80px;
  79. }
  80. .ft {
  81. font-family: eryazhaocaimao;
  82. text-shadow: 0 0 10px rgba(255, 255, 255, 0.8), 0 0 20px rgba(255, 255, 255, 0.6), 0 0 30px rgba(255, 255, 255, 0.4), 0 0 40px rgba(62, 166, 238, 0.8);
  83. }
  84. .content {
  85. @apply absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 text-white w-[120vh] border-[3px] border-[#fff] border-solid rounded-[30px] px-10 py-4 h-[40vh] flex flex-row items-center justify-between gap-4;
  86. background: linear-gradient(0deg, #C7F0FE 0%, #30B9FF 100%);
  87. }
  88. </style>