如何解决单击 Next.js 中的链接时如何强制 URL 中的默认语言环境
出于 SEO 的目的,我需要将英语设置为默认语言 -> mynextapp.com/ 当用户进入网站时,他/她可以选择英语或法语,如果选择英语,则如果选择法语,网址将更改为 mynextapp.com/en -> mynextapp.com/fr
目前我正在使用 Next - i18n 中的内置选项:
i18n: {
locales: ['en','fr'],defaultLocale: 'en',},
但这使我只能将英语作为默认路径 = mynextapp.com/
语言切换器:
<Link
href="/"
locale={router.locale === 'en' ? 'fr' : 'en'}
>
<a>Switch</a>
</Link>
有没有办法在不同的网址下处理相同的语言?这样当您在语言切换器中单击“en”时,url 路径应该是 myapp.com/en。
解决方法
要强制默认语言将区域设置添加到 URL,您可以将其直接传递给 href
,并通过将 locale
设置为 {{1} 来选择退出自动处理区域设置前缀}.
false
如果您希望所有的 <Link href={`/${router.locale === 'en' ? 'fr' : 'en'}`} locale={false}>
<a>Switch</a>
</Link>
都以这种方式运行,并且还强制 URL 使用默认区域设置,则需要应用相同的逻辑。
假设您有一个指向 Link
页面的链接,它看起来如下所示。
/about
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。