Создание:2026-01-21Последнее обновление:2026-01-21

    Документация плагина intlayer для Fastify

    Плагин intlayer для Fastify определяет локаль пользователя и дополняет объект запроса функциями Intlayer. Он также позволяет использовать глобальные функции перевода в контексте запроса.

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

    import Fastify from "fastify";
    import { intlayer } from "fastify-intlayer";
    
    ts;
    const fastify = Fastify();
    
    fastify.register(intlayer);
    
    fastify.get("/", async (req, reply) => {
      const content = req.intlayer.t({
        ru: "Привет",
        en: "Hello",
        fr: "Bonjour",
      });
    
      return content;
    });

    Описание

    Плагин выполняет следующие задачи:

    1. Определение локали: Он анализирует запрос (headers, cookies и т.д.), чтобы определить предпочтительную локаль пользователя.
    2. Декорирование запроса: Добавляет свойство intlayer к объекту FastifyRequest, содержащее:
      • locale: обнаруженная локаль.
      • t: функция перевода.
      • getIntlayer: функция для получения словарей.
    3. Управление контекстом: Использует cls-hooked для управления асинхронным контекстом, позволяя глобальным функциям Intlayer получать доступ к локали, специфичной для запроса.