使用slick轮播图自定义dots

使用slick轮播图自定义dots

  1. 需要实现一个自动轮播的效果图,刚接触slick不久所以不太属性,很难找到改变dots的方法,网上关于这方面的东西又很少,于是乎看了一下github上的文档才写出来,记录一下。
  2. 首先需要安装slick以及对应的样式
yarn add react-slick
yarn add slick-carousel

上代码 index.ts

  • customPagin属性接受一个number类型的参数,返回JSX片段
import { useState } from 'react';
// 引入Slider
import Slider from 'react-slick';
import styles from './index.less';
// 在需要的页面引入样式
import 'slick-carousel/slick/slick.css';
import 'slick-carousel/slick/slick-theme.css';
import { Button, Divider } from 'antd';
export default function IndexPage() {
  let settings = {
  // dots为true时打开圆点指示器
    dots: true,
    // 自定义dots的重要属性
    // customPagin
    customPaging: (i: number) => {
      return (
        <div>
          <div
            style={{
              width: `${i == 0 ? '35px' : '90px'}`,
              borderRight:`${i===0?'1px solid #ccc' :'none'}`,
              paddingRight:'5px'
            }}
          >
            {i == 0 ? '区域' : '垃圾类型'}
          </div>
        </div>
      );
    },
    infinite: true,
    speed: 500,
    slidesToShow: 1,
    slidesToScroll: 1,
    autoplay: true,
  };
  return (
    <Slider {...settings} className={styles.slider}>
      <div>
        <h3>1</h3>
      </div>
      <div>
        <h3>2</h3>
      </div>
    </Slider>
  );
}
  1. index.less
.slider{
  :global{
    .slick-dots{
      .slick-active{
        color: rgb(63, 147, 243);
      };
    }
  }
}

最终实现效果
在这里插入图片描述

在这里插入图片描述

总结

通过设置Slider的customPaging属性,可以实现自定义dots(分页指示器)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值