Nextjs,部署时未找到公用文件夹中的映像,但在本地找到



当我在本地显影时,当我将/public文件夹放在/src/:中时,会发现图像

# locally
./src/public/images/

然后,当我进行部署时,找不到映像。但当我把公共文件夹放在src之外时,会发现图像:

# deploy
./public/images/
./src/

我使用这些图像作为:

<img src="/images/my-image.jpg" alt="" />

是否有我必须使用的配置设置?


编辑:

完整结构:

|- .now/
|  |-  project.json
|  └── README.txt  
|- next.config.js
|- now.json
|- src/
|  |- .next/
|  |  |-  build-manifest.json
|  |  |-  react-loadable-manifest.json
|  |  |-  cache/
|  |  |-  server/
|  |  └── static/
|  |-  pages/
|  └── next-env.d.ts

公用文件夹必须在根目录中。没有其他方式进行配置。

然后,您的代码可以从基本URL(/(开始引用public中的文件。/public/path/image.jpg用作/path/image.jpg

https://nextjs.org/docs/basic-features/static-file-serving

Next.js可以在根目录中名为public的文件夹下提供静态文件,如图像。你可以在这里查看文件

import Image from 'next/image'
function Avatar() {
return <Image src="/me.png" alt="me" width="64" height="64" />
}
export default Avatar

玩得开心。

您可能对.png和.png等字母大小写有问题。您必须在代码中使用与图像扩展大小写相同的大小写。

最新更新