-
Notifications
You must be signed in to change notification settings - Fork 9
/
nuxt.config.ts
74 lines (73 loc) · 2.1 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
import path from 'path'
export default defineNuxtConfig({
// SEO目的でCSRではなくSSG相当とするため、ssr=trueとすることでnext generateで各種ページを生成させる
ssr: true,
nitro: {
prerender: {
// @nuxtjs/i18n を入れている影響でnuxt generateのroot page生成が500となるためfalseを指定
// 本番環境ではfirebase hosting側で301としているため該当ページは不要
failOnError: false,
},
},
css: ['~/assets/vendor/sanitize.css/sanitize.css', '~/assets/scss/main.scss'],
alias: {
$image: path.resolve('public/img'),
},
vite: {
css: {
preprocessorOptions: {
scss: {
additionalData: '@import "@/assets/scss/_variables.scss";',
},
},
},
},
modules: [
'nuxt-lazy-load',
[
'@nuxtjs/i18n',
{
baseUrl: 'http://scalamatsuri.org',
locales: [
{
code: 'ja',
iso: 'ja_JP',
name: '日本語',
},
{
code: 'en',
iso: 'en_US',
name: 'English',
},
],
strategy: 'prefix',
compilation: {
// ロケールメッセージ内のHTMLタグを許容
strictMessage: false,
},
detectBrowserLanguage: {
useCookie: true,
cookieKey: 'scalamatsuri_i18n_redirected',
alwaysRedirect: false,
},
rootRedirect: 'en',
vueI18nLoader: true,
fallbackLocale: 'en',
rules: [
{
resourceQuery: /blockType=i18n/,
type: 'javascript/auto',
options: { asStream: true },
loader: '@intlify/vue-i18n-loader',
},
],
},
],
],
devtools: {
// 有効にするとエラーが出てしまうが、どの設定で切り分けを行ったら良いかわからなかった
// 内容は以下の通り
// [plugin:vite-plugin-vue-inspector] Unquoted attribute value cannot contain U+0022 ("), U+0027 ('), U+003C (<), U+003D (=), and U+0060 (`).
enabled: false,
},
})