如何解决重定向失败:react-native-svg:React.createElement:类型无效
我正试图了解一个错误。当我将我的第一个屏幕重定向到另一个屏幕时,我会进入捆绑器:
“警告:React.createElement:类型无效-预期为字符串 (对于内置组件)或类/函数(对于复合 组件),但得到了:%s。%s%s,对象,“
我猜问题出在svg软件包中-是在我单击时:
<TouchableOpacity onPress={() => this.props.navigation.navigate("Distance")}>
<View style={styles.statContainer}>
<ImageBackground
source={require("../../assets/images/stats-background-1.png")}
style={styles.statImage}
>
<View style={styles.row}>
<Text style={styles.statText}>
{i18n.t("stats.action.dist")}
{"\n"}
<AnimateNumber
value={this.state.stats.total_distance}
countBy={(this.state.stats.total_distance / 50).toFixed(0)}
style={styles.statTextData}
/>{" "}
{i18n.t("stats.unit.kilometre")}
</Text>
</View>
</ImageBackground>
</View>
</TouchableOpacity>
第二个屏幕的代码是:
export default class Stats extends React.Component {
constructor(props) {
super(props);
};
render() {
return (
<ScrollView style={styles.containerScrollNoMargins}>
<Header
backgroundImage={require("../../assets/images/bg-header.png")}
centerComponent={{
text: i18n.t("stats.title"),style: styles.headerComponentStyle,}}
containerStyle={styles.headerContainerStyle}
statusBarProps={{ barStyle: "light-content" }}
/>
<ImageBackground
source={require("../../assets/images/background-stats.jpg")}
style={{flex : 1 }}
imageStyle={{ resizeMode: 'stretch' }}
>
<Svg height="50%" width="50%">
<Image href={require('../../assets/images/Interface_Stat_1.svg')} />
</Svg>
</ImageBackground>
</ScrollView>
);
}
}
我没有得到什么错误,您能给我任何提示,帮助吗? 非常感谢您的时间和解释。
解决方法
似乎失败,因为您在Image
标签内使用了RN的SVG
组件。
它仅支持list中的子级,Image
仅支持here中提到的某些格式,例如png,jpg,jpeg,bmp,gif,webp,psd
。要解决此问题,您可以查看react-native-svg-transformer,它将帮助您轻松导入本地svg文件。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。