【发布时间】:2021-02-22 19:36:39
【问题描述】:
我有以下带有 Slick 轮播的 React 应用程序。我创建了一个自定义 Next 按钮,需要执行 slickNext() 方法才能继续下一张幻灯片。 Slick carousel docs和一些问题的答案都提到了以下调用slickNext()方法的方法。
问题是我收到了错误 slider.slick is not a function。
这是我迄今为止尝试过的
gotoNext = () => {
var slider = document.getElementsByClassName("sliderMain")[0];
console.log("set", slider)
slider.slick("slickNext");
}
const SampleNextArrow = (props) => {
const { className, style } = props;
return (
<div
className={className}
onClick={this.gotoNext}
/>
);
}
const settings = {
dots: true,
infinite: false,
speed: 500,
slidesToShow: 1,
slidesToScroll: 1,
swipe: false,
nextArrow: <SampleNextArrow className="customSlickNext" />,
};
<Slider
id="sliderMain"
{...settings}
className="sliderMain"
afterChange={this.changeSlide}
>{ /* slider goes here */}
</Slider>
我该如何解决这个问题?
【问题讨论】:
-
为什么
return语句后面有一些代码? -
@Saeid-a 这是我的自定义箭头 div
-
您可能需要查看 react-slick 文档,因为方法调用的执行方式不同:react-slick.neostack.com/docs/api
标签: javascript reactjs slick.js react-slick