React native 如何将data.map正确转换为Object.keys?
我有一系列的数据。我使用data.map的7个项目。我在firebase上加载了这个数组,现在不能这样调用它。因为不是这样,所以数组已经存在于对象中 问题 如何为对象创建data.map。此外,我需要传输数据。特别是:id、姓名、信息、车牌号。里面是应该在data.map中的ImageCard 示例对象:React native 如何将data.map正确转换为Object.keys?,react-native,React Native,我有一系列的数据。我使用data.map的7个项目。我在firebase上加载了这个数组,现在不能这样调用它。因为不是这样,所以数组已经存在于对象中 问题 如何为对象创建data.map。此外,我需要传输数据。特别是:id、姓名、信息、车牌号。里面是应该在data.map中的ImageCard 示例对象: Object { "0": Object { "id": 0, "image": "/images/Stargate.jpg", "info": "Stargate
Object {
"0": Object {
"id": 0,
"image": "/images/Stargate.jpg",
"info": "Stargate is a 1994 science fiction adventure film released through Metro-Goldwyn-Mayer (MGM) and Carolco Pictures..",
"latlng": Object {
"latitude": 53.6937,
"longitude": -336.1968,
},
"name": "Stargate",
"year": "1994",
},
有人建议我使用Object.key,但仍然不能正常工作。
因为它最初是:
const url =""
然后:
在render()中:
作为回报:
{data.map(item => (
<ImageCard
data={item}
key={item.id}
onPress={() =>
navigation.navigate(IMAGEPROFILE, {
show: item,
onGoBack: this.onGoBack
})
}
/>
))}
对于Object.keys,我获取如下数据:
firebase
.database()
.ref("/events/" )
.once("value", data => {
if(data !== null){
this.setState({
data })
console.log(data.toJSON())
}
})
如何更正我的示例以将data.map转换为Object.keys?使用并映射返回的数组
Object.keys()方法返回给定对象自身属性名的数组,其顺序与普通循环相同
{
Object.keys(data.map)(项=>)<
ImageCard数据={item}键={item.id}onPress={
() =>
导航。导航(IMAGEPROFILE{
节目:项目,,
这个,这个
})
}
/>
))
}
使用并映射返回的数组
Object.keys()方法返回给定对象自身属性名的数组,其顺序与普通循环相同
{
Object.keys(data.map)(项=>)<
ImageCard数据={item}键={item.id}onPress={
() =>
导航。导航(IMAGEPROFILE{
节目:项目,,
这个,这个
})
}
/>
))
}
ImageCard获取的数据不正确。或者更确切地说,他根本不加载它们。只显示对象的形状,但其中没有任何内容。加载的不是7个元素,而是3个元素。警告:数组或迭代器中的每个子元素都应具有唯一的“键”|警告:失败的道具类型:提供给ListItem
的道具centerElement
无效。我不知道ImageCard
中有什么,错误来自那里。ImageCard获取的数据不正确。或者更确切地说,他根本不加载它们。只显示对象的形状,但其中没有任何内容。除了7个元素之外,只有3个元素已加载。警告:数组或迭代器中的每个子级都应具有唯一的“键”;警告:失败的道具类型:提供给列表项的无效道具centerElement
。我不知道ImageCard
中有什么,错误来自那里。
{data.map(item => (
<ImageCard
data={item}
key={item.id}
onPress={() =>
navigation.navigate(IMAGEPROFILE, {
show: item,
onGoBack: this.onGoBack
})
}
/>
))}
const ImageCard = ({ data, onPress }) => {
const { image, name, year } = data;
firebase
.database()
.ref("/events/" )
.once("value", data => {
if(data !== null){
this.setState({
data })
console.log(data.toJSON())
}
})
{
Object.keys(data).map(item => ( <
ImageCard data = { item } key = { item.id } onPress = {
() =>
navigation.navigate(IMAGEPROFILE, {
show: item,
onGoBack: this.onGoBack
})
}
/>
))
}