0

我想使用 nuxt i18n 从/my-account重定向到/hr/moj-racun(因为克罗地亚语是默认语言,并且存在 my-account 和 moj-racun 之间的映射)。

相反,它会重定向到 /hr/my-account。

我的 nuxt 应用程序文件夹中的页面文件夹名为“my-account”,这是我当前的设置:(
我设置了 alwaysRedirect,但它采用输入的 url 并预先添加语言前缀,但它不翻译它给定的映射)

[
  'nuxt-i18n',
  {
    locales: [
      {
        name: 'Hrvatski',
        code: 'hr',
        iso: 'hr-HR',
        file: 'hr.js'
      },
      {
        name: 'English',
        code: 'en',
        iso: 'en-US',
        file: 'en.js'
      }
    ],
    langDir: 'locales/',
    strategy: 'prefix',
    defaultLocale: 'hr',
    lazy: true,
    detectBrowserLanguage: false
  }
]

编辑,这是我的帐户页面特定的 nuxt-i18n 设置:

export default {
      nuxtI18n: {
        paths: {
          en: '/my-account',
          hr: '/moj-racun'
        }
      }
    }

如果我转到http://example.com/my-account之类的页面,它会被重定向到http://example.com/**hr**/my-account,无需翻译。

4

1 回答 1

0

这是因为您的默认语言环境设置为 hr,如果您想重定向和切换语言并翻译数据,请使用此标签:

<nuxt-link
  v-for="locale in availableLocales"
  :key="locale.code"
  :to="switchLocalePath(locale.code)">{{ locale.name }}</nuxt-link>

您可以访问此页面: https ://i18n.nuxtjs.org/lang-switcher

于 2021-04-17T19:48:19.390 回答