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

React项目中import引入的图片不显示,添加alt属性仍未生效求助

问题排查与修复方案

存在的错误点

  • 变量名拼写错误:导入的汉堡图片变量名为hamburger,但第一个商品对象中误写为humburger,导致资源引用失败
  • 错误使用CSS url()语法:img标签的src属性直接接收导入的静态资源路径即可,url()是CSS背景图的专属写法,套用到src上会导致路径格式错误
  • 对象属性名不统一:第二个商品(Kimchi)的图片字段为image,其余三个商品用的是gambar,遍历统一取product.gambar时第二个商品的图片值为undefined
  • JSX结构错误:return的JSX中仅打开了2个div标签,末尾多写了2个多余的</div>,会触发语法报错
  • 缺少img的alt属性,会触发React的可访问性警告

修正后完整代码

import React, {useState}  from 'react';
import './Soal2.css';
import img3 from './pink3.jpg';
import hamburger from './products/humburger.jpg';
import kimchi from './products/kimchi.jpg';
import topokki from './products/topokki.jpg'
import sushi from './products/sushi.jpg';


function Soal2() {
  const [listProducts, setListProducts] = useState([
    {
      menu: 'Batagor',
      gambar: hamburger, // 修正拼写错误,去掉url()包裹
      harga: 10000
    },
    {
      menu: 'Kimchi',
      gambar: kimchi, // 修正属性名和url()问题
      harga: 15000
    },
    {
      menu: 'Topokki',
      gambar: topokki, // 去掉url()包裹
      harga: 20000
    },
    {
      menu: 'Sushi',
      gambar: sushi, // 去掉url()包裹
      harga: 25000
    } 
  ])

  return (
    <div className="Soal-2">
      <div className="jawaban-2">
      </div>
      {listProducts.map((product, index) => {
        const key = `product-${product.menu}-${index}`
        return (
          <div key={key}>
            {/* 新增alt属性,src直接使用资源变量 */}
            <img src={product.gambar} alt="food menu" />
            <h3>{product.menu}</h3>
            <p>{product.harga}</p>
          </div>
        )
      })}
    </div>
  );
}
      
export default Soal2;

内容的提问来源于stack exchange,提问作者Firsty Ukhti Molyndi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 21:48:02