React native 在文本组件中添加默认颜色的更好方法?
是否有人知道一种更改文本组件默认文本颜色的好方法 下面是我的尝试,将其包装在MyText组件中React native 在文本组件中添加默认颜色的更好方法?,react-native,React Native,是否有人知道一种更改文本组件默认文本颜色的好方法 下面是我的尝试,将其包装在MyText组件中 import styles from 'somewhere'; // import default color function MyText(props) { return ( <Text style={[styles.default, props.style]} allowFontScaling={props.allowFontScaling}
import styles from 'somewhere'; // import default color
function MyText(props) {
return (
<Text
style={[styles.default, props.style]}
allowFontScaling={props.allowFontScaling}
numberOfLines={props.numberOfLines}
onLayout={props.onLayout}
onLongPress={props.onLongPress}
onPress={props.onPress}
suppressHighlighting={props.suppressHighlighting}
testID={props.testID}
>
{props.children}
</Text>
);
}
MyText.propTypes = {
allowFontScaling: PropTypes.bool,
children: PropTypes.any,
numberOfLines: PropTypes.number,
onLayout: PropTypes.func,
onLongPress: PropTypes.func,
onPress: PropTypes.func,
style: PropTypes.object,
suppressHighlighting: PropTypes.bool,
testID: PropTypes.string,
};
从“某处”导入样式;//导入默认颜色
函数MyText(道具){
返回(
{props.children}
);
}
MyText.propTypes={
allowFontScaling:PropTypes.bool,
孩子们:任何人,
numberOfLines:PropTypes.number,
onLayout:PropTypes.func,
onLongPress:PropTypes.func,
onPress:PropTypes.func,
样式:PropTypes.object,
抑制高亮显示:PropTypes.bool,
testID:PropTypes.string,
};
已解决
function MyText({
children,
style,
...props
}) {
return (
<Text
{...props}
style={[styles.default, style]}
>
{children}
</Text>
);
}
函数MyText({
儿童
风格
…道具
}) {
返回(
{儿童}
);
}
您可以用迷人的Native更干净、更简单地做到这一点:
import glamorous from "glamorous-native";
const MyText = glamorous.text({ ...styles });
<MyText>
...
</MyText
从“魅力本土”导入魅力;
const MyText=glamorous.text({…styles});
...
您也可以使用.defaultProps
这样的道具,我将我的道具放在my app.js根目录下,因为我的所有组件文本的默认颜色都是白色。您也可以在TextInput组件上执行此操作。在RN-0.63上测试
从“react native”导入{Text,TextInput}
导出默认MyApp(){
Text.defaultProps.style={color:'white'}
TextInput.defaultProps.style={color:'blue'}
返回(
我的颜色是白色的
我的颜色也是白色的
我的颜色是蓝色的
)
}
不能将子项排除在解构之外,而只是作为…道具的一部分传递?