keen-slider与数据获取功能不兼容
P粉208286791
P粉208286791 2023-08-15 21:59:38
[React讨论组]

我想要获取公共数据并使用keen-slider来显示它们。然而,它似乎工作得不太好,特别是当我尝试添加左右箭头时。它们不会显示出来。另一个问题是滑块在第一次加载时会冻结,只有在调整窗口大小后才会移动。

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);
      }
    });
  }, []);

请在[此处](https://codesandbox.io/s/delicate-butterfly-d4vp5k?file=/src/App.js)查看完整代码。

我按照这些帖子1帖子2中的建议,在获取数据时更新了useKeenSlider中的选项。这有助于缓解错误消息,但并未完全解决问题。

我还按照这里的示例添加了箭头。

欢迎提出任何建议!

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>
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号