index.vue 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. <template>
  2. <view class="ezy-xuexi-page">
  3. <view class="icon-title-navBar-box">
  4. <text class="nav-bar-title">学习</text>
  5. </view>
  6. <chanpin1 v-if="chanpinId==1" ref="chanpin1Ref"></chanpin1>
  7. <!-- 底部 tabBar -->
  8. <custom-tab-bar :show="true" :current-index="currentTabIndex" />
  9. </view>
  10. </template>
  11. <script>
  12. import CustomTabBar from '@/components/custom-tabbar/index.vue';
  13. import cacheManager from "@/utils/cacheManager.js";
  14. import {
  15. onLoad,
  16. onShow,
  17. onHide,
  18. onUnload
  19. } from "@dcloudio/uni-app"
  20. import {
  21. toast
  22. } from '../../utils/common';
  23. import chanpin1 from './chanpin1'
  24. import {
  25. banbenImpinfo
  26. } from "@/api/login.js"
  27. export default {
  28. data() {
  29. return {
  30. currentTabIndex: 1,
  31. banbenId: '',
  32. chanpinId: ''
  33. }
  34. },
  35. components: {
  36. CustomTabBar,
  37. chanpin1
  38. },
  39. onLoad(options) {
  40. uni.hideTabBar()
  41. },
  42. onShow() {
  43. this.currentTabIndex = 1
  44. const cacheData = cacheManager.get('contentInfo');
  45. if (cacheData) {
  46. console.log('使用缓存数据');
  47. this.switchUseCache(cacheData)
  48. } else {
  49. console.log('重新请求数据,请求版本内容详情接口');
  50. this.getBanbenInfo();
  51. }
  52. },
  53. onHide() {
  54. console.log('学习页面隐藏')
  55. },
  56. onUnload() {
  57. // 页面卸载无需特殊处理
  58. },
  59. methods: {
  60. switchUseCache(data){
  61. switch (Number(data.chanpinId)) {
  62. case 1:
  63. this.$nextTick(() => {
  64. this.$refs.chanpin1Ref.initData()
  65. })
  66. break;
  67. case 2:
  68. break;
  69. default:
  70. }
  71. },
  72. switchGetNeiRongInfo(data) {
  73. switch (Number(data.chanpinId)) {
  74. case 1:
  75. const banbenId = data.banbenId
  76. this.$nextTick(() => {
  77. this.$refs.chanpin1Ref.initData(banbenId)
  78. })
  79. break;
  80. case 2:
  81. break;
  82. default:
  83. }
  84. },
  85. getBanbenInfo() {
  86. banbenImpinfo({}).then(res => {
  87. if (res.code == 0) {
  88. this.chanpinId = res.data.chanpinId
  89. this.switchGetNeiRongInfo(res.data)
  90. } else {
  91. toast('请求版本内容详情接口数据异常')
  92. return
  93. }
  94. }).catch(() => {
  95. toast('请求版本内容详情接口数据异常')
  96. return false
  97. })
  98. },
  99. },
  100. computed: {}
  101. }
  102. </script>