我正在开发反应原生应用程序。对于滑块部分,我放置了“Snap carousel”插件。我的滑块显示多个项目。由时间计算滑块项目除以窗口宽度/5。现在我展示了 5 个滑块项目。
问题是,我需要显示活动滑块项目的滑块文本并更改背景颜色。
在渲染项目中,我不能使用状态或道具值。如何在渲染项方法中检查当前索引值?
constructor(props) {
super(props);
this.state = {
activeSlide:0
}
}
_renderItem ({item, index, currentIndex}) {
const self = this;
return (
<View style={styles.slide}>
<View style={stylesSelect.carouselImg}>
<Image
source={item.src}
resizeMode='cover'
/>
</View>
<Text>
{item.title}
</Text>
</View>
);
}
render() {
const { data } = this.props;
return (
<View style={styles.container}>
<Carousel
ref={(c) => { this._carousel = c; }}
data={data}
renderItem={this._renderItem}
sliderWidth={width}
itemWidth={Math.round(width/5)}
sliderHeight={height}
itemHeight={height}
inactiveSlideScale={0.8}
inactiveSlideOpacity={0.7}
loop={true}
onSnapToItem={(index) => this.setState({ activeSlide: index }) }
/>
</View>
)
}
我只想显示{item.title}
活动滑块项目的文本。