You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React中img标签src属性引用映射JSON内图片的正确语法是什么?

问题原因

你使用模板字符串拼接的`item.${data.slug}`属于普通字符串拼接逻辑,JavaScript不会将其解析为对item对象的属性访问操作,因此最终渲染出来的就是item.dwarf这类纯文本字符串,无法拿到对应的图片路径值。

解决方案

要通过动态变量读取对象的属性,需要使用JavaScript的方括号属性访问语法,直接把动态属性名放到item后的方括号内即可,不需要加引号也不需要拼接字符串。

修改后的代码示例

{images.map((item, index) => (
    <C.Image
        key={index}
        item={item}
    >
        <img src={item[data.slug]} alt={`${data.slug} icon`} />
    </C.Image>
))}

可选优化

如果要避免因属性不存在导致的裂图问题,可以加默认路径兜底:

<img src={item[data.slug] || '/assets/default-race.png'} alt={`${data.slug} icon`} />

内容的提问来源于stack exchange,提问作者BraulioPortela

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 11:06:00