banner.vue 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <template>
  2. <div class="banner">
  3. <div v-swiper:mySwiper="swiperOption" class="swiper-container">
  4. <div class="swiper-wrapper">
  5. <div class="swiper-slide" v-for="banner in banners">
  6. <a>
  7. <img :src="banner.pictureLink"/>
  8. </a>
  9. </div>
  10. <div v-if="banners.length === 0" class="swiper-button-prev"><i class="iconfont icon-swiper-left"></i></div>
  11. <div v-if="banners.length === 0"class="swiper-button-next"><i class="iconfont icon-swiper-right"></i></div>
  12. </div>
  13. <div v-if="banners.length === 0" class="swiper-pagination swiper-pagination-bullets"></div>
  14. </div>
  15. </div>
  16. </template>
  17. <script>
  18. export default {
  19. name: 'BannerView',
  20. data () {
  21. return {
  22. swiperOption: {
  23. autoplay: 6000,
  24. pagination: '.swiper-pagination',
  25. paginationClickable: true,
  26. mousewheelControl: false,
  27. effect: 'fade',
  28. lazyLoading: true,
  29. loop: true,
  30. prevButton: '.swiper-button-prev',
  31. nextButton: '.swiper-button-next'
  32. }
  33. }
  34. },
  35. computed: {
  36. banners () {
  37. return this.$store.state.supplier.detail.banner.data.data || []
  38. }
  39. }
  40. }
  41. </script>
  42. <style type="text/scss" lang="scss" scoped>
  43. .banner{
  44. height:400px;
  45. background: url(/images/supplier/banner.png)no-repeat center center;
  46. margin-bottom:15px;
  47. border-radius:5px;
  48. overflow: hidden;
  49. }
  50. </style>