我正在开发一个React原生应用程序。我有一堆SVG文件在我的项目本地。我想使用我的自定义组件来呈现文本和SVG图像。
下面是我的自定义组件,它应该呈现一个Text
和一个Image
静态SVG文件:
import React from 'react';
import {View, Text, Image, StyleSheet} from 'react-native';
export default MyComponent = ({svgFile, text}) => {
return (<View style={styles.line}>
<Image source={svgFile} />
<Text>{text}</Text>
</View>)
}
在我的屏幕中,我尝试显示几个MyComponent
,每个渲染一个特定的SVG图像:
<View>
<MyComponent
svgFile={require('../assets/images/tiger.svg')}
text="tiger"
/>
<MyComponent
svgFile={require('../assets/images/elephant.svg')}
text="elephant"
/>
...
</View>
但是只显示文本,不显示图像。如何显示带有Image
组件的SVG文件?我需要让它在Android和iOS上都能工作。
1条答案
按热度按时间wtzytmuj1#
React Native中的
Image
组件不支持SVG渲染,建议使用react-native-svg在自定义组件中渲染SVG,将svg文件导入组件,使用<SvgXml />
进行渲染: