You need to enable JavaScript to run this app. Next.js 11搭配next-optimized-images时PNG/JPG图片无法显示问题
优惠活动
大模型
产品
解决方案
定价
更多

Next.js 11搭配next-optimized-images时PNG/JPG图片无法显示问题

核心问题出在资源导入的返回值解析错误:你导入的PNG/JPG格式资源,next-optimized-images默认会返回包含资源路径、宽高、占位图数据的对象,而非直接的路径字符串,你直接将整个对象赋值给img标签的src属性,浏览器无法正常解析。从你提供的页面元素检查结果也能验证这一点:src字段的base64内容解码后实际是导出对象的JS代码字符串,并非图片二进制数据。

解决方案按优先级执行:

  1. 修正JSX代码写法,导入资源后取其src属性赋值给img标签
import MyImage from "../public/images/MyImage.png";

<img src={MyImage.src} alt="some text" />
  1. 若希望保持原有src={MyImage}的写法,可以修改next.config.js配置,关闭图片内联阈值,让所有图片统一返回路径字符串:
// config for next-optimized-images
const withOptimizedImages = require("next-optimized-images");

module.exports = withOptimizedImages({
  handleImages: ["jpeg", "png", "svg", "gif", "ico"],
  optimizeImagesInDev: true,
  // 新增配置:单位为字节,设为-1即关闭小图base64内联,所有图片返回路径字符串
  inlineImageLimit: -1
});

修改配置后重启开发服务,清除浏览器缓存即可恢复正常。
3. 额外排查:若上述操作后仍有异常,确认next.config.js中没有同时配置Next.js 11内置的images相关参数,避免内置图片处理逻辑和next-optimized-images插件产生优先级冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.13 07:48:03