mainCard.vue 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <template>
  2. <swiper class="word-view-swiper-box" :indicator-dots="false" :autoplay="false" :circular="false">
  3. <swiper-item>
  4. <view class="swiper-item uni-bg-red">
  5. <xuePage :active-word="activeWord" :active-words="activeWords" @play-audio="handlePlayAudio" :pageData="pageData"></xuePage>
  6. </view>
  7. </swiper-item>
  8. <swiper-item>
  9. <view class="swiper-item uni-bg-red">
  10. <pinPageVue :active-word="activeWord" :active-words="activeWords" @play-audio="handlePlayAudio"></pinPageVue>
  11. </view>
  12. </swiper-item>
  13. <swiper-item>
  14. <view class="swiper-item uni-bg-blue">
  15. <readContent :active-word="activeWord" :pageData="pageData" :active-words="activeWords"></readContent>
  16. </view>
  17. </swiper-item>
  18. <swiper-item>
  19. <view class="swiper-item uni-bg-blue">
  20. <selectPageVue :active-word="activeWord" :active-words="activeWords" @play-audio="handlePlayAudio"></selectPageVue>
  21. </view>
  22. </swiper-item>
  23. <swiper-item>
  24. <view class="swiper-item uni-bg-blue">
  25. <beiPageVue :active-word="activeWord" :pageData="pageData" :active-words="activeWords" @play-audio="handlePlayAudio"></beiPageVue>
  26. </view>
  27. </swiper-item>
  28. </swiper>
  29. </template>
  30. <script setup>
  31. import pinPageVue from './pinPage.vue';
  32. import selectPageVue from './selectPage.vue';
  33. import beiPageVue from './beiPage.vue';
  34. import readContent from './readContent.vue';
  35. import xuePage from './xuePage.vue';
  36. const props = defineProps({
  37. activeWord: {
  38. type: Object,
  39. },
  40. pageData: {
  41. type: Object,
  42. },
  43. activeWords: {
  44. type: Array
  45. },
  46. })
  47. const emits = defineEmits(['play-audio'])
  48. function handlePlayAudio({url,code}) {
  49. emits('play-audio',{url,code})
  50. }
  51. </script>
  52. <style lang="scss" scoped>
  53. </style>