如何使用平面列表集成react-native-swiper

时间:2019-01-22 13:25:38

标签: javascript react-native react-native-android react-native-flatlist react-native-swiper

我正在尝试集成react-native-swiper,将视频加载到其中。 我正在寻找一种将其与平面清单集成的方法。但是数据无法正确加载,是否有其他方法可以使用平面列表(使用array.map())加载数据

export default class HomeTab extends Component {
    render() {
     return (
       <FlatList
          data={Data}
          keyExtractor={(item, index) => item.id}
          renderItem={({item}) =>

            <Swiper style={styles.wrapper} 
                showsButtons={false}
                horizontal={true}
                loop={false}
                index={item.id}
                activeDot={
                  <View></View>
                }
                dot={
                  <View></View>
                }
                >
                  <View style={styles.slide1}>
                            <Video 
                                source={{uri: item.media}}   // Can be a URL or a local file.
                                ref={(ref) => {
                                  this.player = ref
                                }}        
                                resizeMode={'contain'}
                                style={styles.backgroundVideo} 
                        />

                      </View>
            </Swiper>

            }
          />
    )
  }
}

使用npm软件包:react-native-swiper https://www.npmjs.com/package/react-native-swiper

1 个答案:

答案 0 :(得分:0)

尝试使用此库,因为react-native-swiper-flatlist内包含平面列表 下面的示例:

  <SwiperFlatList
        autoplay
        autoplayDelay={3}
        index={3}
        autoplayLoop
        data={items}
        renderItem={({item}) => // Standard Image
                            <View style={[styles.child, { backgroundColor: '#000' }]}>
                                <Image
                                    source={{uri:item.key}}
                                    style={styles.checkoutSliderImage}
                                />
                                <Text>{item.key}</Text>
                            </View>
                        }
        showPagination
      />