【发布时间】:2019-06-27 18:42:57
【问题描述】:
在 React Native 中(我对 React 很陌生)我有一个 javascript 函数,它返回一个名为 myResult 的变量中的数组。在终端打印它显示:
Array [
25,
25,
20,
10,
5,
5,
]
我用
添加到状态 this.setState({resultArray: myResult});
然后,在状态下我有一个这样的数组:
this.state = {
foodList: [
{id: "25",
src: `"./images/banana25.png"`
},
{id: "20",
src: `"./images/banana20.png"`
},
{id: "15",
src: `"./images/apple15.png"`
},
{id: "10",
src: `"./images/mango10.png"`
},
{id: "5",
src: `"./images/steakNeggs5.png"`
},
}
使用 resultArray 我想在视图中为每个项目显示一个图像,该图像对应于与每个数组项目匹配的 id。
<View style={{height: 318, flexDirection: "row" }}>
{this.state. resultArray.map((item, key) => {
let src = this.state.foodList.item.src
return (
<Image key={key} style={{flexDirection: "row" }} source={require({src})} />
);
})}
</View>
显然,这不起作用,因为我没有正确的 src 语法。
有人可以告诉我从 foodList 数组中获取 src 的正确语法吗?
此外,根据文档,使用索引作为键有效,但不赞成,但由于 resultArray 可以(在这种情况下,确实)保存相同的数字/字符串,我假设使用数组项是不可能。考虑到输出只会生成 1-10 个图像组件,使用 Math.random() 是否可以创建密钥?
【问题讨论】:
标签: loops react-native jsx