Next.js Как обрабатывать корень с динамическим маршрутом [локаль] (локализация)Javascript

Форум по Javascript
Ответить
Anonymous
 Next.js Как обрабатывать корень с динамическим маршрутом [локаль] (локализация)

Сообщение Anonymous »

У меня есть проблема, или я хочу какую -то идею /решение, как мне подходить к этому. И страница «основной» работает только с определенной локалью, которая правильная! Но как мне справиться с корневой страницей и макетом? Я думал об использовании перенаправления, основанного на определенном языке пользователей браузера (и, конечно, у меня есть локаль по умолчанию). Но хорошо ли это для SEO и т. Д.

Код: Выделить всё

import { NextResponse } from "next/server";

const SUPPORTED_LOCALES = ['cs', 'sk', 'da', 'de'];
const DEFAULT_LOCALE = 'cs';

function detectLocale(acceptLanguage) {
if (!acceptLanguage) return DEFAULT_LOCALE;

const languages = acceptLanguage.split(',');
for (const lang of languages) {
const [code] = lang.split(';')[0].toLowerCase().split('-');
if (SUPPORTED_LOCALES.includes(code)) {
return code;
}
}
return DEFAULT_LOCALE;
}

export function middleware(req) {
const url = req.nextUrl.clone();
const { pathname } = url;

if (pathname === '/') {
const locale = detectLocale(req.headers.get('accept-language'));
url.pathname = `/${locale}`;
return NextResponse.redirect(url);
}
У меня также была идея создать главную страницу без локализации, и пользователь мог бы просто нажать на язык, на котором он хочет быть. (www.domain.eu), и там он мог перенаправить на язык, который он хочет.>

Подробнее здесь: https://stackoverflow.com/questions/795 ... calization
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»