hjyd
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

130 lines
3.7 KiB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
  1. <template>
  2. <swiper
  3. id="screen"
  4. :virtual="true"
  5. :direction="'vertical'"
  6. :slidesPerView="1"
  7. :spaceBetween="0"
  8. :mousewheel="true"
  9. :speed="800"
  10. :pagination="pagination"
  11. :keyboard="{
  12. enabled: true,
  13. onlyInViewport: false,
  14. pageUpDown: true,
  15. }"
  16. @swiper="onSwiper"
  17. @slideChange="onSlideChange"
  18. :modules="modules"
  19. class="home_swiper"
  20. >
  21. <swiper-slide :key="0" :virtualIndex="0">
  22. <HeaderSwiper />
  23. </swiper-slide>
  24. <swiper-slide :key="1" :virtualIndex="1">
  25. <Service />
  26. </swiper-slide>
  27. <swiper-slide :key="2" :virtualIndex="2">
  28. <Cooperation />
  29. </swiper-slide>
  30. <swiper-slide :key="3" :virtualIndex="3">
  31. <CasePictureList />
  32. </swiper-slide>
  33. <swiper-slide :key="4" :virtualIndex="4">
  34. <SoftHardwareSummary />
  35. </swiper-slide>
  36. <swiper-slide :key="5" :virtualIndex="5">
  37. <SoftHardwareDetail />
  38. </swiper-slide>
  39. <swiper-slide :key="6" :virtualIndex="6">
  40. <Culture />
  41. </swiper-slide>
  42. <swiper-slide :key="7" :virtualIndex="7">
  43. <Culture />
  44. </swiper-slide>
  45. <swiper-slide :key="8" :virtualIndex="8">
  46. <CorporateCulture />
  47. </swiper-slide>
  48. <swiper-slide :key="9" :virtualIndex="9">
  49. <VideoPlayer />
  50. </swiper-slide>
  51. <swiper-slide :key="10" :virtualIndex="10">
  52. <ContactUs />
  53. </swiper-slide>
  54. </swiper>
  55. </template>
  56. <script>
  57. import { onMounted } from 'vue'
  58. import { useSwiperStore } from '@/store'
  59. // Import Swiper Vue.js components
  60. import { Swiper, SwiperSlide } from 'swiper/vue'
  61. // import required modules
  62. import { Mousewheel, Pagination, Virtual, Keyboard } from 'swiper'
  63. // import views to swiper
  64. import Service from '@/views/Index/components/Service'
  65. import HeaderSwiper from '@/views/Index/components/HeaderSwiper'
  66. import VideoPlayer from '@/views/Index/components/VideoPlayer'
  67. import CaseSummary from '@/views/Index/components/CaseSummary'
  68. import CasePictureList from '@/views/Index/components/CasePictureList'
  69. import CaseDetails from '@/views/Index/components/CaseDetails'
  70. import ContactUs from '@/views/Index/components/ContactUs'
  71. import CircuitBoard from '@/views/Index/components/CircuitBoard'
  72. import Culture from '@/views/Index/components/Culture'
  73. import SoftHardwareSummary from '@/views/Index/components/SoftHardwareSummary'
  74. import CorporateCulture from '@/views/Index/components/CorporateCulture'
  75. import SoftHardwarePictureList from '@/views/Index/components/SoftHardwarePictureList'
  76. import SoftHardwareDetail from '@/views/Index/components/SoftHardwareDetail'
  77. import Cooperation from '@/views/Index/components/Cooperation'
  78. import { totalPageAni } from '@/common/utils'
  79. // Import Swiper styles
  80. import 'swiper/css'
  81. import 'swiper/css/pagination'
  82. export default {
  83. components: {
  84. Swiper,
  85. SwiperSlide,
  86. ContactUs,
  87. VideoPlayer,
  88. CircuitBoard,
  89. CorporateCulture,
  90. Culture,
  91. Cooperation,
  92. CaseDetails,
  93. HeaderSwiper,
  94. Service,
  95. CaseSummary,
  96. SoftHardwarePictureList,
  97. SoftHardwareDetail,
  98. SoftHardwareSummary,
  99. CasePictureList,
  100. },
  101. setup() {
  102. const onSwiper = swiper => {
  103. const swiperStore = useSwiperStore()
  104. swiperStore.initSwiper(swiper)
  105. }
  106. const onSlideChange = swiper => {
  107. const { activeIndex } = swiper
  108. const swiperStore = useSwiperStore()
  109. swiperStore.initSwiper(swiper)
  110. swiperStore.updateActiveIndex(activeIndex)
  111. // add animate to some ele
  112. totalPageAni()
  113. }
  114. return {
  115. onSwiper,
  116. onSlideChange,
  117. pagination: {
  118. clickable: true,
  119. renderBullet: function (index, className) {
  120. return '<div class="' + className + '"></div>'
  121. },
  122. },
  123. modules: [Mousewheel, Pagination, Virtual, Keyboard],
  124. }
  125. },
  126. }
  127. </script>
  128. <style lang="scss" scoped></style>