NuxtImage 配置上传目录配置
json
// https://nuxt.com/docs/api/configuration/nuxt-config
import { join } from 'path'
export default defineNuxtConfig({
compatibilityDate: "2025-07-15",
devtools: { enabled: true },
app: {
head: {
title: "XJ",
link: [
{
rel: "icon",
href: "/images/favicon.ico",
},
],
},
},
modules: [
"@nuxt/eslint",
"@nuxt/image",
"@nuxt/scripts",
"@nuxt/ui",
"nuxt-icons",
"@nuxtjs/i18n"
],
// 某些v-if里的图片无法加载
nitro: {
// [新配置] 将根目录下的 uploads 文件夹挂载为公共资源
// 这样 Nitro 会直接服务这个目录下的文件,无需 Nginx 或自定义 API
publicAssets: [
{
baseURL: '/uploads',
dir: join(process.cwd(), 'uploads'),
maxAge: 60 * 60 * 24 * 30, // 缓存 30 天
}
],
prerender: {
routes: [
"/_ipx/f_webp,avif,png&q_80/images/card_bg_1_xl.png",
"/_ipx/f_webp,avif,png&q_80/images/card_bg_1_2xl.png",
"/_ipx/f_webp,avif,png&q_80/images/card_bg_2_xl.png",
"/_ipx/f_webp,avif,png&q_80/images/card_bg_3_xl.png",
"/_ipx/f_webp,avif,png&q_80/images/card_bg_3_2xl.png",
"/_ipx/f_webp,avif,png&q_80&s_457x534/images/contact_us_img.png",
"/_ipx/f_webp,avif,png&q_80/images/contact_us_img_2.png",
],
},
},
css: ["~/assets/css/main.css"],
image: {
domains: ['localhost', 'gwweb.gametest6.com'],
alias: {
// upload 目录需要挂载,并且能够访问
'/uploads': process.env.NODE_ENV === 'production' ? 'https://mydomain/uploads' : 'http://localhost:3000/uploads'
}
},
i18n: {
defaultLocale: "en",
locales: [
{
code: "en",
name: "English",
file: "en.json",
icon: "/images/flag_en.png",
},
{
code: "cn",
name: "China",
file: "cn.json",
icon: "/images/flag_ch.png",
},
],
},
});