我现在完成了项目,我想将自定义字体设置为所有Text
组件。
我认为最好的方法是创建一个自定义Text
组件,并用react-native
的默认Text替换它。
现在如何创建具有默认样式的自定义Text
组件?
最佳答案
为了实现这一点,您需要有一个反应本地组件,该组件可以在实例化后通过样式或其他属性进行配置。
例如,您可以像这样自定义反应本机组件CustomText
:
// CustomText.js
import React from 'react';
import {
Text,
StyleSheet,
} from 'react-native';
export default class CustomText extends React.Component {
constructor(props) {
super(props);
}
render() {
return (
<Text style={[styles.defaultStyle, this.props.style]}>
{this.props.children}
</Text>
);
}
}
const styles = StyleSheet.create({
// ... add your default style here
defaultStyle: {
},
});
然后在您的主要组件上导入并调用该自定义组件,如下所示:
import CustomText from './CustomText';
//... other imports go here.
// in the render method you call your CustomText component.
render(){
//...
<CustomText style={{ fontWeight: 60, }}>
This is custom Text
</CustomText>
}
注意:如果您只想更改样式,我认为@Yanush解决方案最适合这种情况。
我希望这是有帮助的。