我正在尝试传递不透明度道具op
。在这里,我在父组件中对其进行计算,然后将其传递:
cardOpacity = Date.now() < (entry.lastCompleted / 1000000 + 43200000)? 0.5 : 1
return (
<ChallengeCarousel
key={index}
title={entry.title}
op={cardOpacity}
onOpenWebsite={funcOpenWebsite}
/>
);
在孩子中,我尝试了几种不同的添加方式,方法是使用StyleSheet.create()
将其放入对象中,然后将其放入样式数组中。我还尝试将其作为样式数组中的对象放入。
render () {
const {op} = this.props;
const opacityStyles = StyleSheet.create({
card: {
opacity: op
}
})
return (
<TouchableHighlight
activeOpacity={ 0.5 }
underlayColor={ '#fff' }
style={ styles.slideInnerContainer }
onPress={ () => { this.goChallengeActivityDetail() }}
>
<View style={ styles.contentContainer }>
<View style={[opacityStyles.card, styles.centerContainer, {opacity: op}]}>
<Text numberOfLines={2} style={ styles.description }>{ subtitle } </Text>
</View>
</View>
</TouchableHighlight>
);
另一个提示是,当我更改父项中的内容时,我看到了效果,但是当我直接对组件进行更改时,它什么也没有改变。