0

我有以下 next-i18next.config.js 文件

 module.exports = {
  i18n: {
    locales: ["en", "de-DE", "fr"],
    defaultLocale: "en",
    localeDetection: false,
    domains: [
      {
        domain: "my-domain.com",
        defaultLocale: "en",
      },
      {
        domain: "my-domain.fr",
        defaultLocale: "fr",
        http: true,
      },
      {
        domain: "my-domain.de",
        defaultLocale: "de-DE",
        http: true,
      },
    ],
  },
};

我已设置localeDetectionfalse,但是当我将语言从 en 更改为 fr 时,我的应用程序被重定向到http://my-domain.fr

我的 next.config.js 如下

const { i18n } = require("./next-i18next.config");

module.exports = {
  i18n,
};

我错过了什么吗?

4

1 回答 1

1

我认为您对语言环境检测的确切作用没有正确的理解。

区域设置检测将根据用户的语言偏好自动将用户重定向到正确的区域设置网站/页面。似乎困扰您的是您的语言环境设置为特定域,因此您的下一个路由器将始终将您重定向到与您的语言环境关联的域。所以这是预期的行为。

将语言环境检测设置为 false,您根本不会最初将用户重定向到他的首选语言环境。

于 2021-11-01T10:44:24.687 回答