<!-- 轮播banner图 -->
          <div class="banner">
            <div class="swiper-container" id="swiper-banner">
              <div class="swiper-wrapper">
                <div class="swiper-slide" v-for="(item, index) in bannerList" :key="index + Math.random()" @click="showToast(item)">
                  <img :src="item.imgUrl" alt="">
                </div>
              </div>
              <div class="swiper-pagination"></div>
            </div>
          </div>
Bscroll.js
  <div class="content-box">
              <div ref="tab" class="tab">
                <ul ref="tabWrapper" class="tab_content">
                  <li v-for="(item, index) in activityList"  :key="index + Math.random()" class="item activity" @click="jumpToActivity(item)">
                    <img :src="item.imgUrl" alt="">
                  </li>
                </ul>
              </div>
            </div>
 
  
import Swiper from 'swiper'
import BScroll from 'better-scroll'
import 'swiper/css/swiper.css'
 
  
    
 mounted () {
    this.$nextTick(() => {
      this.bannerSwiper = new Swiper('#swiper-banner', {
        observer: true,
        observeParents: true,
        loop: true,
        autoplay: {
          delay: 3000,
          stopOnLastSlide: false
        },
        pagination: {
          el: '.swiper-pagination'
        }
      })
    })
    this.$nextTick(() => {
      this._initTabScroll()
    })
  },
methods: {
    _initTabScroll () {
      const width = 0.24 + 0.24 + 3.14 * this.activityList.length + 0.14 * (this.activityList.length - 1)
      this.$refs.tabWrapper.style.width = width + 'rem'
      this.$nextTick(() => {
        if (!this.scroll) {
          this.scroll = new BScroll(this.$refs.tab, {
            startX: 0,
            click: true,
            scrollX: true,
            scrollY: false,
            eventPassthrough: 'vertical'
          })
        } else {
          this.scroll.refresh()
        }
      })
    }
 }