Задайте питання та отримайте підсумок документа, вказавши цю сторінку та обраного вами постачальника штучного інтелекту
Історія версій
- "Initial documentation"v9.4.023.08.2026
Вміст цієї сторінки перекладено за допомогою штучного інтелекту.
Переглянути останню версію оригінального вмісту англійськоюЯкщо у вас є ідея щодо покращення цієї документації, будь ласка, долучіться, надіславши pull request на 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: The key of the dictionary to read, as declared in your content files.
- Type:
DictionaryKeys— a union of every declared dictionary key. - Required: Yes
localeOrSelector: LocalesValues | DictionarySelector- Description: The locale to interpret the content with, or a selector object for dynamic dictionaries.
'fr'— a locale{ item: 2 }— a collection item (omititemto get every item as an array){ variant: 'black-friday' }— a named variant (omit for thedefaultone){ variant: { id: 'prod_abc', userId: '123' } }— a structured variant- Any selector can carry a locale:
{ item: 2, locale: 'fr' }
- Type:
LocalesValues | DictionarySelector - Required: No (Optional) — defaults to the configured
defaultLocale.
- Description: The locale to interpret the content with, or a selector object for dynamic dictionaries.
plugins: Plugins[]- Description: Custom node transformers replacing the base interpreter plugins. Advanced use only; omit it to keep the default behaviour.
- Type:
Plugins[] - Required: No (Optional)
Повертає
- Тип: Інтерпретований вміст словника, типізований з вашої декларації.
- Опис: Простий об'єкт, що відображає поле
contentвашого словника, де кожен вузол Intlayer розв'язаний на його остаточне значення для запитуваної мови.
Приклад використання
Базове використання
Скопіюйте код у буфер обміну
Скопіюйте код у буфер обміну
import { getIntlayer } from "intlayer";
const { title } = getIntlayer("app", "fr"); // "Bonjour"
Без локалі
Пропуск локалі інтерпретує вміст за допомогою defaultLocale, декларованої у вашій конфігурації.
Скопіюйте код у буфер обміну
Усередині серверного обробника
Скопіюйте код у буфер обміну
З селектором (колекції та варіанти)
Скопіюйте код у буфер обміну
Примітки щодо поведінки
Caching
Результати кешуються в кеші на рівні модуля за допомогою ключа key + locale + selector. Повторне виклик getIntlayer("app", "fr") інтерпретує словник один раз і повертає той самий об'єкт потім.
Відсутні словники
Під час розробки, якщо запросити ключ, для якого не було згенеровано словник, виводиться попередження один раз і повертається безпечний резервний проксі: читання content.title повертає рядок "app.title" замість викидання помилки. Це дозволяє сторінці залишатися функціональною, поки відсутня декларація не буде виправлена. Запустіть збірку Intlayer (або dev сервер), щоб словник був згенеровано.
Розмір bundle
getIntlayer читає об'єднаний словник, який містить кожну локаль. У клієнтських bundle'ах плагіни збірки переписують виклик, щоб відправляється тільки необхідний контент. Коли ви читаєте контент поза рендерингом (метадані, loader'и, серверні функції) і хочете, щоб одна локаль завантажувалася за запитом, використовуйте замість цього getIntlayerAsync.
Пов'язані функції
getIntlayerAsync: Асинхронний аналог для завантаження одного chunk'у локалізації.getDictionary: Інтерпретує об'єкт dictionary, який ви передаєте самі, замість пошуку за ключем.useIntlayer: React hook еквівалент, який зчитує локаль від провайдера.
TypeScript
Скопіюйте код у буфер обміну
