1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <template>
  2. <div class="index-image">
  3. <div class="index-inner-swiper">
  4. <swiper :options="swiperOptions" ref="swiperRef">
  5. <swiper-slide class="index-inner-slide" v-for="item in list" :key="item">
  6. <img :src="item" />
  7. </swiper-slide>
  8. </swiper>
  9. </div>
  10. </div>
  11. </template>
  12. <script>
  13. export default {
  14. name: 'IndexImage',
  15. props: {
  16. list: {
  17. type: Array
  18. }
  19. },
  20. watch: {
  21. list() {
  22. this.$nextTick(() => {
  23. this.$refs.swiperRef.update()
  24. })
  25. }
  26. },
  27. data() {
  28. return {
  29. swiperOptions: {
  30. autoplay: {
  31. delay: 2500
  32. }
  33. }
  34. }
  35. }
  36. }
  37. </script>
  38. <style lang="scss" scoped>
  39. .index-image {
  40. .index-inner-swiper {
  41. .index-inner-slide {
  42. position: relative;
  43. & > img {
  44. width: 100%;
  45. height: 37vh;
  46. }
  47. }
  48. }
  49. }
  50. </style>