index.vue 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <template>
  2. <view>
  3. <index ref="首页" v-show="page == '首页'" />
  4. <my-case ref="案例" v-show="page == '案例'" />
  5. <dataBank ref="资料库" v-show="page == '资料库'" />
  6. <school ref="商学院" v-show="page == '商学院'" />
  7. <product ref="单品" v-show="page == '单品'" />
  8. <bottom-suspension-frame ref="pages" @onChange="pageChange" />
  9. </view>
  10. </template>
  11. <script>
  12. import index from './index/index.vue'
  13. import myCase from './index/myCase.vue'
  14. import dataBank from './cloud/dataBank.vue'
  15. import school from './cloud/school.vue'
  16. import product from './cloud/product.vue'
  17. import bottomSuspensionFrame from "./modules/bottomSuspensionFrame.vue";
  18. export default {
  19. components: { bottomSuspensionFrame, index, myCase, dataBank, school, product },
  20. data() {
  21. return {
  22. swiperItemID: 'cloud',
  23. page: '单品'
  24. }
  25. },
  26. onShow() {
  27. // #ifdef MP-WEIXIN
  28. this.updatePageData(this.swiperItemID, this.page)
  29. // #endif
  30. },
  31. methods: {
  32. updatePageData(itemId, page) {
  33. this.$refs.pages.onClick(itemId, page)
  34. },
  35. pageChange(detail) {
  36. uni.setNavigationBarTitle({
  37. title: detail.name,
  38. })
  39. this.page = detail.name;
  40. try {
  41. this.$refs[detail.name].init(detail.callBack)
  42. } catch (error) {
  43. detail.callBack()
  44. }
  45. console.log("切换页面", detail)
  46. }
  47. }
  48. }
  49. </script>
  50. <style lang="scss"></style>