shouye.vue 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <template>
  2. <view className="client-shouye-page">
  3. <!-- <view class="icon-title-bjcolor-navBar-box">
  4. <text class="nav-bar-title">{{data.realName}}</text>
  5. </view> -->
  6. <template v-if="data.kaoshiList.length||data.lianxiList.length||data.kechengList.length">
  7. <!-- 考试 -->
  8. <kaoshiCardVue v-if="data.kaoshiList.length" :data="{ count: data.kaoshiCount, ...data.kaoshiList[0] }"></kaoshiCardVue>
  9. <!-- 练习 -->
  10. <lianxiCardVue v-if="data.lianxiList.length" :data="{ count: data.lianxiCount,...data.lianxiList[0] }"></lianxiCardVue>
  11. <!-- 课程 -->
  12. <kechengCardVue v-if="data.kechengList.length" :data="{ count: data.kechengCount,...data.kechengList[0] }"></kechengCardVue>
  13. </template>
  14. <view class="default-img-box" v-else>
  15. <icon></icon>
  16. <text>没有可培训的内容...</text>
  17. </view>
  18. <!-- 底部区域 -->
  19. <customTabbarClient :currentTab="0"></customTabbarClient>
  20. </view>
  21. </template>
  22. <script setup>
  23. import kaoshiCardVue from '@/components/listCard/kaoshiCard.vue';
  24. import kechengCardVue from '@/components/listCard/kechengCard.vue';
  25. import lianxiCardVue from '@/components/listCard/lianxiCard.vue';
  26. import customTabbarClient from "@/components/custom-tabbar/custom-tabbar-client.vue"
  27. import * as httpApi from "@/api/shouye.js"
  28. import {
  29. onLoad, onShow
  30. } from "@dcloudio/uni-app"
  31. import {
  32. reactive
  33. } from "vue"
  34. import cacheManager from '@/utils/cacheManager.js'
  35. const data = reactive({
  36. kaoshiCount: 0,
  37. kaoshiList: [],
  38. kechengCount: 0,
  39. kechengList: [],
  40. lianxiCount: 0,
  41. lianxiList: [],
  42. realName: ''
  43. })
  44. function initPage() {
  45. httpApi.getAppIndexInfo().then(res => {
  46. const {
  47. kaoshiCount,
  48. kaoshiList,
  49. kechengCount,
  50. kechengList,
  51. lianxiCount,
  52. lianxiList
  53. } = res.data;
  54. data.kaoshiCount = kaoshiCount;
  55. data.kaoshiList = kaoshiList || [];
  56. data.kechengCount = kechengCount;
  57. data.kechengList = kechengList || [];
  58. data.lianxiCount = lianxiCount;
  59. data.lianxiList = lianxiList || [];
  60. })
  61. }
  62. onLoad(() => {
  63. const auth = cacheManager.get('auth');
  64. data.realName = auth.realName;
  65. })
  66. onShow(() => {
  67. initPage();
  68. })
  69. </script>