【发布时间】:2021-10-04 03:59:14
【问题描述】:
我在 React 中使用更大的数组,并希望如下显示:图像/名称图像/名称图像/名称。我有以下代码,但我不知道如何将图像数组映射到它显示它的图像。谢谢
function showProtocolsNames() {
if (supportedVaults) {
let arr = supportedVaults
.map((item) => item.protocolName)
.filter((item, index, arr) => {
return arr.indexOf(item) == index;
});
let arrImages = supportedVaults
.map((item) => item.protocolKey)
.filter((item, index, arr) => {
return arr.indexOf(item) == index;
});
let protocolsName = [...new Set(arr)];
let protocolsImages = [...new Set(arrImages)];
console.log(protocolsName, protocolsImages);
return protocolsName.map((vault) => {
return (
<>
{' '}
<img
src={getVaultIcon(vault)}
width="42px"
height="42px"
style={{
marginRight: '12px',
}}
/>
<p className="vaults-protocol">{vault}</p>
</>
);
});
}
return null;
}
已解决: 通过一起创建图像和名称的数组,然后像 DBS 在 cmets 中建议的那样对其进行映射。
【问题讨论】:
-
哦,对不起!我想这样显示:1 嘿 2 hello 3 see ya
-
是的,请 1 秒
-
我现在更新了我的问题。我以前没有在这里问过很多问题。非常感谢您的帮助!
-
那好多了 - 我不这样做
react所以我帮不上忙 -
将
protocolName和protocolKey映射到两个单独的数组中似乎很奇怪,然后可能需要在getVaultIcon函数中将它们重新组合在一起。从一开始就建造一个单一的结构不是更好吗?
标签: javascript reactjs ecmascript-6