javascript - slickGoTo doesn't change active slide - Stack Overflow

I added slider using react-slick to my React app. For <Slider> I added ref, and I'm trying u

I added slider using react-slick to my React app. For <Slider> I added ref, and I'm trying use it to change active slide:

import React, { useRef } from 'react';
import Slider from 'react-slick';

const TestSlider = () => {
  const handleOnClick = index => {
    sliderRef.slick('slickGoTo', index);
    // also try sliderRef.slickGoTo(index);
  };

  <Slider {...settings} ref={sliderRef}>
    ...
  </Slider>
}

but I got an error:

TypeError: sliderRef.slick is not a function

Why doesn't this work for me?

"react": "^16.6.3",

"react-slick": "^0.27.12",

I added slider using react-slick to my React app. For <Slider> I added ref, and I'm trying use it to change active slide:

import React, { useRef } from 'react';
import Slider from 'react-slick';

const TestSlider = () => {
  const handleOnClick = index => {
    sliderRef.slick('slickGoTo', index);
    // also try sliderRef.slickGoTo(index);
  };

  <Slider {...settings} ref={sliderRef}>
    ...
  </Slider>
}

but I got an error:

TypeError: sliderRef.slick is not a function

Why doesn't this work for me?

"react": "^16.6.3",

"react-slick": "^0.27.12",

Share Improve this question edited Oct 28, 2020 at 13:38 Ed Lucas 7,3654 gold badges40 silver badges50 bronze badges asked Oct 28, 2020 at 9:43 JackJack 5943 gold badges14 silver badges32 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 4

According to react-slick's slickGoTo() documentation, you need to pass a function as the ref. Something like:

  const handleOnClick = index => {
    this.slider.slickGoTo(index);
  };

  <Slider {...settings} ref={slider => (this.slider = slider)}>
    ...
  </Slider>

If you want to create a ref using the useRef hook, it would look like:

  const sliderRef = useRef();

  const handleOnClick = index => {
    sliderRef.current.slickGoTo(index);
  };

  <Slider {...settings} ref={sliderRef}>
    ...
  </Slider>

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745116324a4612146.html

相关推荐

  • javascript - slickGoTo doesn&#39;t change active slide - Stack Overflow

    I added slider using react-slick to my React app. For <Slider> I added ref, and I'm trying u

    10小时前
    20

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信