Пользовательская локаль Nuxtjs i18n

У меня есть приложение, основная проблема в том, что я не могу понять, как создать пользовательскую локаль. Например, у меня есть такие маршруты /hello и /ja/hello, где первый маршрут по умолчанию английский, а второй японский. Я пытаюсь оставить свою английскую локаль без префикса, но добавляю префикс только для одного маршрута этой версии, например /eng/hello.

Мой nuxt.config.js для i18n:

i18n: {
    locales: [
      {
        code: 'en',
        file: 'en.js',
        domain: domains.en,
        icon: 'english',
        name: 'English',
        iso: 'en',
      },
      {
        code: 'ja',
        file: 'ja.js',
        domain: domains.ja,
        icon: 'japan',
        name: '日本語',
        iso: 'ja',
      },
    ],
    // differentDomains: true,
    lazy: true,
    langDir: 'lang/',
    defaultLocale: 'en',
    detectBrowserLanguage: {
      useCookie: true,
      cookieKey: 'clang',
      onlyOnRoot: true, // recommended
      alwaysRedirect: true,
    },
    seo: false,
    strategy: 'prefix_except_default',
  },

person Kirukato Fu    schedule 01.07.2021    source источник


Ответы (1)


Попробуйте настроить под модулями вот так, пример из моего проекта:

  // Modules: https://go.nuxtjs.dev/config-modules
  modules: [
    'nuxt-socket-io',
    '@nuxtjs/axios',
    '@nuxtjs/auth-next',
    ['nuxt-i18n', {
      locales: [
        {
          name: 'Türkçe',
          code: 'tr',
          iso: 'tr-TR',
          file: 'tr-TR.js'
        },
        {
          name: 'English',
          code: 'en',
          iso: 'en-US',
          file: 'en-US.js'
        },
      ],
      langDir: 'lang/',
      defaultLocale: 'en',
    }]
  ],

  i18n: {},
person mokumus    schedule 12.07.2021