Helpers

getLocale

Справка по серверному методу getLocale (API)

Обзор

Функция getLocale получает текущую локаль пользователя при серверном рендеринге. Локаль возвращается в виде строки, например 'en-US'.

getLocale — это серверный метод; его можно использовать только в серверных компонентах.

Для клиентской стороны см. useLocale.

Справка

Возвращает

Промис, который выполняется со строкой текущей локали пользователя, например 'en-US'.


Резервное поведение

Когда запрашивается неподдерживаемая локаль, выбирается резервная локаль.

Например, при неподдерживаемой локали, если (1) у пользователя в настройках браузера указано несколько предпочитаемых локалей и (2) одна из них поддерживается вашим приложением, то будет выбрана наиболее подходящая локаль.

Кроме того, если подходящих резервных локалей нет, но две локали используют один и тот же язык (например, en-US и en-GB), то будет выбрана поддерживаемая локаль с тем же языком.

Если ни одно из условий не выполняется, используется локаль по умолчанию.

См. раздел документации gt.config.json о настройке поддерживаемых локалей.


Примеры

Базовое использование

Определите локаль пользователя при серверной отрисовке.

GetUserLocale.jsx
import { getLocale } from 'gt-next/server';

export default async function GetUserLocale() {
    const locale = await getLocale(); 
    return <p>Локаль пользователя: {locale}</p>;
}

Примечания

  • Функция getLocale асинхронная; чтобы получить локаль, её нужно вызывать с await.
  • Она предназначена для серверной среды. Для клиентских компонентов используйте useLocale.
  • Возвращаемая локаль соответствует формату строк локалей.

Что дальше

  • Узнайте, как настроить поддерживаемые локали с помощью withGTConfig().

Насколько полезно это руководство?

getLocale