physics.uvue 3.5 KB

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