index.vue 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <template>
  2. <view>
  3. <index ref="首页" v-show="page == '首页'" />
  4. <store ref="活动" v-show="page == '活动'" />
  5. <my-case ref="案例" v-show="page == '案例'" />
  6. <dataBank ref="资料库" v-show="page == '资料库'" />
  7. <school ref="商学院" v-show="page == '商学院'" />
  8. <product ref="单品" v-show="page == '单品'" />
  9. <bottom-suspension-frame ref="pages" @onChange="pageChange" />
  10. </view>
  11. </template>
  12. <script>
  13. import index from './index/index.vue'
  14. import store from './index/store.vue'
  15. import myCase from './index/myCase.vue'
  16. import dataBank from './cloud/dataBank.vue'
  17. import school from './cloud/school.vue'
  18. import product from './cloud/product.vue'
  19. import bottomSuspensionFrame from "./modules/bottomSuspensionFrame.vue";
  20. export default {
  21. components: { bottomSuspensionFrame, index, store, myCase, dataBank, school, product },
  22. data() {
  23. return {
  24. swiperItemID: 'index',
  25. page: '首页'
  26. }
  27. },
  28. onShow() {
  29. const systemInitIsComplete = this.$Http.systemInitIsComplete;
  30. if (!systemInitIsComplete || typeof systemInitIsComplete == 'object') {
  31. this.$Http.HomePageStartRendering = render.bind(this)
  32. } else {
  33. render()
  34. }
  35. function render() {
  36. console.log(this.$Http.systemInitIsComplete)
  37. this.$Http.changePage = function (itemId, page, params) {
  38. this.$refs.pages.onClick(itemId, page, false, params)
  39. }.bind(this)
  40. // #ifdef MP-WEIXIN
  41. this.updatePageData(this.swiperItemID, this.page)
  42. // #endif
  43. }
  44. },
  45. methods: {
  46. updatePageData(itemId, page) {
  47. if (this.$refs[this.page].updatePage) this.$refs.pages.onClick(itemId, page)
  48. },
  49. changePage(itemId, page, params) {
  50. },
  51. pageChange(detail) {
  52. uni.setNavigationBarTitle({
  53. title: detail.name,
  54. })
  55. this.page = detail.name;
  56. try {
  57. console.log(this.$refs[detail.name].updatePage)
  58. if (this.$refs[detail.name].updatePage) uni.pageScrollTo({
  59. scrollTop: 0,
  60. duration: 0,
  61. })
  62. this.$refs[detail.name].init(detail.callBack, detail.params)
  63. } catch (error) {
  64. detail.callBack()
  65. }
  66. console.log("切换页面", detail)
  67. }
  68. }
  69. }
  70. </script>
  71. <style lang="scss"></style>