Files
jinshen-website/nuxt.config.ts

83 lines
1.6 KiB
TypeScript

// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
compatibilityDate: "2025-07-15",
devtools: { enabled: true },
app: {
// head
head: {
title: "Jinshen Website",
meta: [
{ name: "viewport", content: "width=device-width, initial-scale=1" },
{
name: "description",
content: "Jinshen Website",
},
],
link: [{ rel: "icon", type: "image/x-icon", href: "/favicon.ico" }],
},
},
// css
css: [
"@unocss/reset/tailwind.css",
"~/assets/scss/index.scss",
"@mdi/font/css/materialdesignicons.min.css",
],
nitro: {
esbuild: {
options: {
target: "esnext",
},
},
prerender: {
crawlLinks: false,
routes: ["/"],
ignore: ["/hi"],
},
},
vite: {
css: {
preprocessorOptions: {
scss: {
additionalData: `@use "@/assets/scss/element/index.scss" as element;`,
},
},
},
},
elementPlus: {
icon: "ElIcon",
importStyle: "scss",
themes: ["dark"],
},
i18n: {
detectBrowserLanguage: {
useCookie: true,
cookieKey: 'i18n_redirected',
redirectOn: 'root'
},
locales: [
{ code: 'en', language: 'en-US', name: 'English', file: 'en.json' },
{ code: 'zh', language: 'zh-CN', name: '简体中文', file: 'zh.json' },
],
defaultLocale: 'zh',
langDir: 'locales'
},
modules: [
"@nuxt/eslint",
"@nuxt/fonts",
"@nuxt/icon",
"@nuxt/image",
"@nuxt/test-utils",
"@vueuse/nuxt",
"@pinia/nuxt",
"@unocss/nuxt",
"@element-plus/nuxt",
"@nuxtjs/i18n",
],
});