Спросите свой вопрос и получите сводку документа, используя эту страницу и выбранного вами поставщика AI
История версий
- "Initial documentation"v9.4.023.08.2026
Содержимое этой страницы было переведено с помощью ИИ.
Смотреть последнюю версию оригинального контента на английскомЕсли у вас есть идея по улучшению этой документации, не стесняйтесь внести свой вклад, подав запрос на вытягивание на GitHub.
Ссылка на документацию GitHubКопировать Markdown документа в буфер обмена
Документация: функция getIntlayer в intlayer
Описание
Функция getIntlayer выбирает один словарь по его ключу и возвращает его содержимое, интерпретированное для заданной локали. Это независимый от фреймворка эквивалент хука useIntlayer: то же содержимое, те же селекторы, но пригодный для использования везде, где React контекст недоступен — скрипты Node, серверные функции, загрузчики маршрутов, построители метаданных, обработчики Express/Fastify, тесты.
Функция читает словари, созданные Intlayer в .intlayer/, поэтому аргумент key типизирован и автодополняется на основе ваших объявлений содержимого, а возвращаемый объект полностью типизирован вплоть до каждого листового узла.
Основные возможности:
- Типизированные ключи словарей и типизированное возвращаемое содержимое
- Интерпретирует каждый узел содержимого (
t(),enu(),cond(),insert(),nest(),md(),html(),file(),gender()) - Принимает локаль или объект селектора (коллекции, варианты)
- Результаты кэшируются для каждой комбинации
key + locale + selector - В режиме разработки откатывается на безопасный прокси при отсутствии словаря вместо краша
Function Signature
Копировать код в буфер обмена
Параметры
key: DictionaryKeys- Description: Ключ словаря для чтения, объявленный в ваших файлах контента.
- Type:
DictionaryKeys— объединение всех объявленных ключей словаря. - Required: Yes
localeOrSelector: LocalesValues | DictionarySelector- Description: Локаль для интерпретации контента или объект селектора для динамических словарей.
'fr'— локаль{ item: 2 }— элемент коллекции (опуститеitemчтобы получить все элементы как массив){ variant: 'black-friday' }— именованный вариант (опустите дляdefaultварианта){ variant: { id: 'prod_abc', userId: '123' } }— структурированный вариант- Любой селектор может содержать локаль:
{ item: 2, locale: 'fr' }
- Type:
LocalesValues | DictionarySelector - Required: No (Optional) — по умолчанию используется настроенная
defaultLocale.
- Description: Локаль для интерпретации контента или объект селектора для динамических словарей.
plugins: Plugins[]- Description: Пользовательские трансформеры узлов, заменяющие базовые плагины интерпретатора. Только для продвинутого использования; опустите для сохранения поведения по умолчанию.
- Type:
Plugins[] - Required: No (Optional)
Возвращаемое значение
- Type: Интерпретированное содержимое словаря, типизированное из вашего объявления.
- Description: Простой объект, отражающий поле
contentвашего словаря, где каждый узел Intlayer разрешен на его финальное значение для запрошенной локали.
Пример использования
Базовое использование
Копировать код в буфер обмена
Копировать код в буфер обмена
import { getIntlayer } from "intlayer";
const { title } = getIntlayer("app", "fr"); // "Bonjour"
Без локали
Если пропустить параметр locale, контент будет интерпретирован с использованием defaultLocale, объявленной в вашей конфигурации.
Копировать код в буфер обмена
Внутри обработчика сервера
Копировать код в буфер обмена
С селектором (коллекции и варианты)
Копировать код в буфер обмена
Примечания о поведении
Кеширование
Результаты кешируются на уровне модуля с ключом key + locale + selector. Повторные вызовы getIntlayer("app", "fr") интерпретируют словарь один раз и впоследствии возвращают тот же объект.
Отсутствующие словари
В процессе разработки запрос ключа, для которого не был сгенерирован словарь, регистрирует предупреждение один раз и возвращает безопасный резервный прокси: чтение content.title возвращает строку "app.title" вместо выброса ошибки. Это позволяет странице оставаться функциональной во время исправления недостающей декларации. Запустите сборку Intlayer (или сервер разработки), чтобы словарь был сгенерирован.
Размер бандла
getIntlayer читает объединённый словарь, который содержит все локали. В клиентских бандлах плагины сборки переписывают вызов так, чтобы отправлялось только необходимое содержимое. Когда вы читаете содержимое вне рендеринга (метаданные, загрузчики, серверные функции) и хотите загрузить одну локаль по требованию, используйте getIntlayerAsync.
Связанные функции
getIntlayerAsync: Асинхронный аналог для загрузки одного языкового chunk'а.getDictionary: Интерпретирует объект словаря, который вы передаёте сами, вместо поиска по ключу.useIntlayer: Эквивалент React hook'а, читающий локаль из провайдера.
TypeScript
Копировать код в буфер обмена
