小程序自定义轮播图圆点组件

2022-07-14,,,,

本文实例为大家分享了小程序自定义轮播图圆点组件的具体代码,供大家参考,具体内容如下

微信小程序自带的轮播图小点,是一个圆点且在图片上展示,不美观。上图为自定义后的轮播图效果

代码如下:

wxhtml:

<!-- 轮播图 -->
    <view class="lbt">
      <swiper class="banner-list" style="height:100%;" circular="{{circular}}" indicator-dots='' autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}" bindchange="swiperchange"> 
        <block wx:for="{{imgurls}}" wx:key='{{item.id}}'>
          <swiper-item>
            <image src="{{urls}}{{item.image}}" class="slide-image" width="100%" />
          </swiper-item>
        </block>
      </swiper>
      <!-- 这里是自定义控制组件的模块 -->
      <view class="dots">
      <block wx:for="{{imgurls}}" wx:key="{{item.id}}">
      <!-- 循环图片张数有多少张图片就有多少个小点 -->
      <view class="dot{{index == swipercurrent ? ' active' : ''}}"></view>
      </block>
      </view>
    </view>
  </view>

wxjs:

// 轮播图片改变时,小圆点也改
  swiperchange: function (e) {
    this.setdata({
      swipercurrent: e.detail.current
    })
  },

wxcss:

.lbt {
  position: relative;
  width: 100%;
  height: 300rpx;
  padding: 30rpx;
  box-sizing: border-box;
  border-radius: 10rpx;
}
.lbt .dots{
position: absolute;
left: 0;
right: 0;
bottom: 0;
display: flex;
justify-content: center;
}
.lbt .dots .dot{
margin: 0 6rpx;
width: 18rpx;
height: 10rpx;
background: #a2a2a2;
border-radius: 6rpx;
transition: all .6s;
}
.lbt .dots .dot.active{
width: 30rpx;
height: 10rpx;
background:#3d3d3d;
}

.slide-image {
  width: 100%;
  height: 100%;
  border-radius: 10rpx;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

《小程序自定义轮播图圆点组件.doc》

下载本文的Word格式文档,以方便收藏与打印。