javascript - 使用动态内容 react Swiper

标签 javascript reactjs instagram-api superagent

我正在使用 react-id-swiper 使用来自 Instagram 的图像制作轮播。 Swiper 组件在响应后似乎没有更新。我认为将我的 setState 放在 componentWillMount 中会起作用,但显然不行。当我在 Chrome 中打开检查器时它开始工作了吗?

import React, { Component } from 'react'
import Swiper from 'react-id-swiper'
import request from 'superagent'
import './index.css'

const swiperParams = {
  slidesPerView: 5,
  spaceBetween: 0,
  navigation: {
    nextEl: '.swiper-button-next',
    prevEl: '.swiper-button-prev'
  },
  pagination: {
    el: '.swiper-pagination',
    clickable: true
  },
}

class Carousel extends Component {
  constructor(props) {
    super(props)
    this.state = {
      photos: []
    }
  }

  componentWillMount() {
    this.fetchPhotos();
  }

  fetchPhotos() {
    request
      .get('https://api.instagram.com/v1/users/self/media/recent/?access_token=' + process.env.INSTAGRAM_ACCESS_TOKEN)
      .then((res) => {
        this.setState({
          photos: res.body.data
        })
      })
  }

  render() {
    return (
      <Swiper {...swiperParams}>
        {this.state.photos.map((photo, key) => {
          return (
            <div key={photo.id}>
              <img src={photo.images.standard_resolution.url} alt={photo.caption} />
            </div>
          )
        })}
      </Swiper>
    )
  }
}

export default Carousel

最佳答案

在您的对象 swiperParamas 中包含以下属性

rebuildOnUpdate: true

关于javascript - 使用动态内容 react Swiper,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50805404/

相关文章:

javascript - 如何使单个标签不可点击?

javascript - document.cookie : Works in localhost but Returns Empty on Web Hosting 问题

ios - Instagram v 7.5 是否打破了 iphone Hook

oauth - 使用 Windows 服务或控制台应用程序获取 access_token。 Instagram API

javascript - src 的图像选择不起作用 jquery

javascript - TypeScript 执行顺序不一致

javascript - 删除最后一个子元素后删除父元素

reactjs - 找不到模块 : Can't resolve './reducers/index'

reactjs - 从 DateInput BlueprintJS 更改月份名称

android - “Invalid platform app” 使用 Instagram 基本显示 API 时出错