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

Next.js Monorepo中静态图片无法加载,提示「请求的资源不是有效图片」的问题求助

Next.js Monorepo中静态图片无法加载,提示「请求的资源不是有效图片」的问题求助

大家好,我现在碰到了一个Next.js单仓(monorepo)场景下静态图片无法解析的问题,想请大家帮忙分析下原因。

我的项目是基于Shadcn UI的Next.js monorepo结构,用来在多个项目间共享组件,具体的文件夹结构如下:

.
├── apps
│   └── web
│       ├── components
│       ├── node_modules
│       ├── pages
│       └── styles
├── node_modules
└── packages
    ├── eslint-config
    └── typescript-config

我尝试过两种public文件夹的放置方式:一种是放在整个仓库的根目录,另一种是放在apps/web/目录下。引用图片时,我试过两种路径写法:/public/<file_path>.png,以及直接写/<file_path>.png,比如代码里是这么用的:

<Image src={`/static/haroombe_logo.png`} alt='logo' width="64" height="64" />

但不管哪种方式,都会抛出类似这样的错误:

The requested resource isn't a valid image for / received text/html; charset=utf-8

图片大小不到200KB,所以我怀疑是不是配置或者别名没设置对导致的问题。


更新/临时解决方法:我后来手动导入了图片,然后把导入的变量放到src标签里,这样就可以正常加载了,也就是按照Next.js本地图片的官方用法来操作的。

备注:内容来源于stack exchange,提问作者MoHaKh

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.13 19:19:28