reactjs - 我是 react-native 新手,我无法显示我的图像
问题描述
我正在尝试在我的应用程序中显示图像但我不能,图像没有显示并且没有看到任何错误,感谢您的帮助。这是我的代码。
这是包含存储库的所有数据的文件,并且还呈现<RepositoryItem>
每个存储库的组件。
主要的.jsx
import React from 'react';
import { SafeAreaView, View, FlatList, StyleSheet } from 'react-native';
import RepositoryItem from './RepositoryItem';
const repositories = [
{
id: 'jaredpalmer.formik',
fullName: 'jaredpalmer/formik',
description: 'Build forms in React, without the tears',
language: 'TypeScript',
forksCount: 1589,
stargazersCount: 21553,
ratingAverage: 88,
reviewCount: 4,
ownerAvatarUrl: 'https://avatars2.githubusercontent.com/u/4060187?v=4',
}
];
const ItemSeparator = () => <View style={styles.separator} />;
const RepositoryList = () => {
const renderItem = ({item}) => <RepositoryItem item={item} />;
return (
<SafeAreaView>
<FlatList
data={repositories}
ItemSeparatorComponent={ItemSeparator}
renderItem={renderItem}
keyExtractor={item => item.id}
/>
</SafeAreaView>
);
};
const styles = StyleSheet.create({
separator: {
height: 10,
},
});
export default RepositoryList;
这是显示每个存储库的文件。
项目.jsx
import React from 'react';
import { Text, View, Image } from 'react-native';
const Item = ({ fullName,
description,
language,
forksCount,
stargazersCount,
ratingAverage,
ownerAvatarUrl,
reviewCount }) => (
<View>
<Text>Full name: {fullName}</Text>
<Text>Description: {description}</Text>
<Text>Language: {language}</Text>
<Text>Stars: {stargazersCount}</Text>
<Text>Forks: {forksCount}</Text>
<Text>Reviews: {reviewCount}</Text>
<Text>Rating: {ratingAverage}</Text>
<Image source={{ uri: ownerAvatarUrl }} />
</View>
);
const RepositoryItem = ({ item }) => {
return (
<View>
<Image ownerAvatarUrl={item.ownerAvatarUrl} />
<Item
fullName={item.fullName}
description={item.description}
language={item.language}
stargazersCount={item.stargazersCount}
forksCount={item.forksCount}
reviewCount={item.reviewCount}
ratingAverage={item.ratingAverage}
/>
</View>
);
};
export default RepositoryItem;
谢谢你的帮助
解决方案
我通过进行这些更改来解决它,首先我添加了样式以使图像更小并进行了一些更改。这是现在的 Item.jsx 文件。
import React from 'react';
import { Text, View, Image, StyleSheet } from 'react-native';
const styles = StyleSheet.create({
tinyLogo: {
width: 50,
height: 50,
}
});
const Item = ({ fullName,
description,
language,
forksCount,
stargazersCount,
ratingAverage,
ownerAvatarUrl,
reviewCount }) => (
<View>
<Image
style={styles.tinyLogo}
source={{
uri: ownerAvatarUrl,
}}
/>
<Text>Full name: {fullName}</Text>
<Text>Description: {description}</Text>
<Text>Language: {language}</Text>
<Text>Stars: {stargazersCount}</Text>
<Text>Forks: {forksCount}</Text>
<Text>Reviews: {reviewCount}</Text>
<Text>Rating: {ratingAverage}</Text>
</View>
);
const RepositoryItem = ({ item }) => {
return (
<View>
{/* <Image ownerAvatarUrl={item.ownerAvatarUrl} /> */}
<Item
fullName={item.fullName}
description={item.description}
language={item.language}
stargazersCount={item.stargazersCount}
forksCount={item.forksCount}
reviewCount={item.reviewCount}
ratingAverage={item.ratingAverage}
ownerAvatarUrl={item.ownerAvatarUrl}
/>
</View>
);
};
export default RepositoryItem;
推荐阅读
- android - 无法在带有颤振应用程序的手机上运行或调试
- c# - 使用 C# 和 Exchange 2019 在员工的 Outlook 日历中创建约会
- python - Pandas 按小时重新采样数据会创建不存在的数据
- xml - 雪花:无法递归解析 xml
- excel - 类型不匹配问题 VBA - 公式到值
- python - 如何使用命令行在 Windows 上使用 openvpn?
- rust - 函数参数名称前的“mut”是什么意思?
- scala - 如何使用 JWT Authenticator 访问 Play Silhouette 中受保护的资产
- php - 我正在尝试更改数据库中的表,但是当我尝试更改列数据时显示但不在其他数据的同一行中?
- c++ - boost: read_json: 读取多行