This repository was archived by the owner on Dec 27, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnuxt.config.ts
122 lines (106 loc) · 2.49 KB
/
nuxt.config.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
// https://nuxt.com/docs/api/configuration/nuxt-config
const backendHost = process.env.inter_aipp_host || 'http://127.0.0.1:9000'
const defaultLocale = process.env.NODE_ENV == 'production' ? 'en-US': 'zh-CN'
export default defineNuxtConfig({
devtools: {enabled: true},
// @ts-ignore
modules: [
'@nuxtjs/i18n',
'@element-plus/nuxt',
'@pinia/nuxt',
'@pinia-plugin-persistedstate/nuxt',
'nuxt-lodash',
'dayjs-nuxt',
'@nuxtjs/device',
"@sidebase/nuxt-auth"
],
app: {
head: {
charset: 'utf-8',
viewport: 'width=device-width, initial-scale=1',
}
},
nitro: {
devProxy: {
'/api': {
// https://github.com/http-party/node-http-proxy#options
target: backendHost,
changeOrigin: true
}
}
},
auth: {
isEnabled: true,
provider: {
type: 'local',
endpoints: {
signIn: false,
signOut: false,
signUp: false,
getSession: false,
}
},
sessionDataType: {
id: 'string | number',
userName: 'string'
}
},
elementPlus: {
importStyle: 'scss'
},
lodash: {
prefix: "_",
prefixSkip: ["string"],
upperAfterPrefix: false,
exclude: ["map"],
alias: [
["camelCase", "stringToCamelCase"], // => stringToCamelCase
["kebabCase", "stringToKebab"], // => stringToKebab
["isDate", "isLodashDate"], // => _isLodashDate
],
},
i18n: {
strategy: 'prefix_and_default',
defaultLocale,
langDir: 'locales',
detectBrowserLanguage: {
useCookie: true,
cookieKey: 'i18n_redirected',
redirectOn: 'all',
},
locales: [
{code: 'zh-CN', name: '简体中文', file: 'zh-CN.json'},
{code: 'zh-TW', name: '繁体中文', file: 'zh-TW.json'},
{code: 'en-US', name: 'English', file: 'en-US.json'},
]
},
piniaPersistedstate: {
// pinia默认使用cookie进行持久化
cookieOptions: {
sameSite: 'strict',
},
storage: 'cookies'
},
runtimeConfig:{
public: {
gtagId: 'G-FS4QCSW076' // 谷歌统计
}
},
routeRules: {
'/dash/**': {ssr: false},
'/api/**': {
// 用于开发者以生产模式运行,生产环境不会走这里
proxy: { to: `${backendHost}/**`, },
}
},
dayjs: {
locales: ['zh-cn', 'en'],
defaultLocale: 'zh-cn',
plugins: ['relativeTime', 'utc', 'timezone'],
defaultTimezone: 'UTC'
},
build: {
transpile: ['klinecharts']
},
compatibilityDate: '2024-08-19',
})