Refactor code structure and remove redundant changes
This commit is contained in:
142
nuxt.config.ts
Normal file
142
nuxt.config.ts
Normal file
@ -0,0 +1,142 @@
|
||||
// https://nuxt.com/docs/api/configuration/nuxt-config
|
||||
export default defineNuxtConfig({
|
||||
devServer: {
|
||||
port: 8888,
|
||||
host: '0.0.0.0'
|
||||
},
|
||||
|
||||
devtools: {
|
||||
enabled: process.env.NODE_ENV === 'development'
|
||||
},
|
||||
|
||||
|
||||
ssr: true,
|
||||
modules: ['@unocss/nuxt', '@pinia/nuxt','@element-plus/nuxt'],
|
||||
css: ['@unocss/reset/tailwind.css', 'element-plus/dist/index.css'],
|
||||
vite: {
|
||||
css: {
|
||||
preprocessorOptions: {
|
||||
scss: {
|
||||
additionalData: `@use "~/assets/scss/variables.scss" as *; @use "~/assets/scss/mixins.scss" as *;`,
|
||||
},
|
||||
},
|
||||
postcss: {
|
||||
plugins: [
|
||||
// postCssPxToRem({
|
||||
// rootValue: 16, // 结果为:设计稿元素尺寸/16,比如元素宽320px,最终页面会换算成 20rem
|
||||
// mediaQuery: false, //(布尔值)允许在媒体查询中转换px。
|
||||
// // exclude: /node_modules/, //node_modules目录下样式全部不转义
|
||||
// propList: ['*'] //需要做转化处理的属性如`hight`、`width`、`margin`等,`*`表示全部
|
||||
// })
|
||||
],
|
||||
},
|
||||
},
|
||||
optimizeDeps: {
|
||||
include: ['naive-ui']
|
||||
},
|
||||
// 生产环境构建优化
|
||||
build: {
|
||||
// 生产环境移除 console 和 debugger
|
||||
minify: 'esbuild',
|
||||
target: 'es2020'
|
||||
},
|
||||
esbuild: {
|
||||
// 生产环境下移除所有 console 语句和 debugger
|
||||
drop: process.env.NODE_ENV === 'production' ? ['console', 'debugger'] : []
|
||||
}
|
||||
},
|
||||
|
||||
// 页面过渡配置
|
||||
app: {
|
||||
pageTransition: {
|
||||
name: 'page',
|
||||
mode: 'out-in',
|
||||
duration: 400
|
||||
},
|
||||
layoutTransition: {
|
||||
name: 'layout',
|
||||
mode: 'out-in',
|
||||
duration: 400
|
||||
},
|
||||
head: {
|
||||
title: 'xlCig - 专业PC硬件产品和装机服务',
|
||||
htmlAttrs: {
|
||||
lang: 'en',
|
||||
},
|
||||
meta: [
|
||||
{ charset: 'utf-8' },
|
||||
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
|
||||
{ name: 'description', content: '专业的PC硬件产品和装机建议,助您打造梦想中的高性能电脑' },
|
||||
{ name: 'keywords', content: 'xlCig,PC硬件,电脑配置,显卡,CPU,装机' },
|
||||
{ name: 'author', content: 'xlCig' },
|
||||
// 百度站点验证
|
||||
{ name: 'baidu-site-verification', content: 'codeva-2z90c1PlRw' },
|
||||
// SEO meta tags
|
||||
{ property: 'og:title', content: 'xlCig - 专业PC硬件产品和装机服务' },
|
||||
{ property: 'og:description', content: '专业的PC硬件产品和装机建议,助您打造梦想中的高性能电脑' },
|
||||
{ property: 'og:type', content: 'website' },
|
||||
{ property: 'og:url', content: 'https://www.xlcig.cn' },
|
||||
{ property: 'og:site_name', content: 'xlCig' },
|
||||
{ name: 'theme-color', content: '#00f5ff' },
|
||||
// robots meta
|
||||
{ name: 'robots', content: 'index, follow' }
|
||||
],
|
||||
link: [
|
||||
{ rel: 'icon', type: 'image/png', href: '/logo.png' },
|
||||
{ rel: 'apple-touch-icon', sizes: '180x180', href: '/logo.png' },
|
||||
{ rel: 'icon', type: 'image/png', sizes: '32x32', href: '/logo.png' },
|
||||
{ rel: 'icon', type: 'image/png', sizes: '16x16', href: '/logo.png' }
|
||||
]
|
||||
}
|
||||
},
|
||||
|
||||
runtimeConfig: {
|
||||
public: {
|
||||
// API 基础地址
|
||||
apiBase: process.env.NUXT_PUBLIC_API_BASE || (
|
||||
process.env.NODE_ENV === 'production'
|
||||
? 'https://api.xlcig.cn' // 生产环境
|
||||
: 'http://192.168.11.194:9999' // 开发环境
|
||||
),
|
||||
|
||||
// WebSocket 地址
|
||||
wsUrl: process.env.NUXT_PUBLIC_WS_URL || (
|
||||
process.env.NODE_ENV === 'production'
|
||||
? 'wss://api.xlcig.cn/websocket' // 生产环境使用wss
|
||||
: 'ws://192.168.11.194:9999/websocket' // 开发环境使用ws
|
||||
),
|
||||
|
||||
// 应用信息
|
||||
appName: process.env.NUXT_PUBLIC_APP_NAME || 'xlCig',
|
||||
appVersion: process.env.NUXT_PUBLIC_APP_VERSION || '1.0.0',
|
||||
|
||||
// 调试模式
|
||||
debug: process.env.NUXT_PUBLIC_DEBUG === 'true' || process.env.NODE_ENV === 'development',
|
||||
|
||||
// 环境标识
|
||||
environment: process.env.NODE_ENV || 'development'
|
||||
}
|
||||
},
|
||||
|
||||
build: {
|
||||
transpile: ['naive-ui', 'vueuc', '@css-render/vue3-ssr']
|
||||
},
|
||||
|
||||
// 优化SSR性能和开发代理
|
||||
nitro: {
|
||||
compressPublicAssets: true,
|
||||
// 开发环境代理配置
|
||||
devProxy: {
|
||||
'/api': {
|
||||
target: 'http://192.168.11.194:9999/api',
|
||||
changeOrigin: true,
|
||||
prependPath: true,
|
||||
},
|
||||
'/websocket': {
|
||||
target: 'ws://192.168.11.194:9999',
|
||||
ws: true,
|
||||
changeOrigin: true,
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
Reference in New Issue
Block a user