# Nuxt.js の config に i18n 書いたら type エラーで怒られた
GitHub Pages でサイトを公開する際、Nuxt.js と Next.js のどちらを使用するか迷ったため、実際に両方を試してみました。
nuxt.config.ts に i18n の設定を追加すると、型定義に関連するエラーが発生しました。
Object literal may only specify known properties, and 'i18n' does not exist in type 'InputConfig
<NuxtConfig, ConfigLayerMeta>
環境
"@nuxtjs/i18n": "^9.1.1""nuxt": "^3.14.1592"
nuxt.config.ts
export default defineNuxtConfig({
modules: ["@nuxtjs/i18n"],
i18n: {
locales: [
{ code: "en", name: "English", file: "en.json" },
{ code: "ja", name: "日本語", file: "ja.json" },
],
defaultLocale: "en",
lazy: true,
langDir: "locales/",
strategy: "prefix", // URLに言語を含める (例: /en, /ja)
},
ssr: false,
});
このエラーで Github に issue 出しているユーザーがいるけど、解決しないまま close された
解決しない解決法
export default defineNuxtConfig({
modules: ["@nuxtjs/i18n"],
i18n: {
locales: [
{ code: "en", name: "English", file: "en.json" },
{ code: "ja", name: "日本語", file: "ja.json" },
],
defaultLocale: "en",
lazy: true,
langDir: "locales/",
strategy: "prefix", // URLに言語を含める (例: /en, /ja)
},
ssr: false,
} as any);
any 型を使ってエラー解消した
TypeScript といえば、やはり React のほうが親和性高いですね。