keen-slider与数据获取功能不兼容
P粉208286791
P粉208286791 2023-08-15 21:59:38
0
1
616
<p>我想要获取公共数据并使用keen-slider来显示它们。然而,它似乎工作得不太好,特别是当我尝试添加左右箭头时。它们不会显示出来。另一个问题是滑块在第一次加载时会冻结,只有在调整窗口大小后才会移动。</p> <pre class="brush:php;toolbar:false;">const [data, setData] = useState([]); const [options, setOptions] = useState({}); const [currentSlide, setCurrentSlide] = useState(0); const [loaded, setLoaded] = useState(false); const [sliderRef, instanceRef] = useKeenSlider(options); useEffect(() => { fetch("./data.json") .then((response) => response.json()) .then((json) => { console.log(json); setData(json); }); setOptions({ initial: 0, slides: { origin: "center", perView: "3", spacing: 25 }, slideChanged(slider) { setCurrentSlide(slider.track.details.rel); }, created() { setLoaded(true); } }); }, []);</pre> <p>请在[此处](https://codesandbox.io/s/delicate-butterfly-d4vp5k?file=/src/App.js)查看完整代码。</p> <p>我按照这些帖子1帖子2中的建议,在获取数据时更新了<code>useKeenSlider</code>中的选项。这有助于缓解错误消息,但并未完全解决问题。</p> <p>我还按照这里的示例添加了箭头。</p> <p>欢迎提出任何建议!</p>
P粉208286791
P粉208286791

全部回复(1)
P粉268284930

我认为你的映射数据失败了,所有的结果是:

<div className="keen-slider__slide number-slide1">1</div>
但我们期望的结果是:

<div className="keen-slider__slide number-slide1">1</div>
      <div className="keen-slider__slide number-slide2">2</div>
      <div className="keen-slider__slide number-slide3">3</div>
      <div className="keen-slider__slide number-slide4">4</div>
      <div className="keen-slider__slide number-slide5">5</div>
      <div className="keen-slider__slide number-slide6">6</div>
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板