我想使用prop值动态添加颜色 - 与父视图相关。
我有以下 -
<Text style={[copyStyles.copyrightTxt, copyStyles.copyColor{this.Props.Color}]}>© Copyright 2019 LRM Security Ltd</Text>
将通过:
进行样式const copyStyles = StyleSheet.create({
copyColorOrange:{
color:'#f79431',
}
});
但是我遇到了一个错误的"意外令牌" - 有人可以告诉我我要去哪里了?
您可以通过两种方式访问对象的属性:
objectName.propertyName
,或者您可以使用允许您使用字符串的替代方式
objectName["propertyName"]
您应该使用替代方法来构造所需的字符串来访问样式对象内部的值。
copyStyles[`copyColor${this.props.Color}`]
props
也不是所有小写?
更好的方法是嵌套您的属性:
const copyStyles = {
copyColor:{
Orange:{
color:'#f79431',
}
}
};
和使用:copystyles.copycolor [this.props.color]