React Интеграция: Документация по хуку useIntlayer
Этот раздел предоставляет подробное руководство по использованию хука useIntlayer в React-приложениях, позволяя эффективно локализовать контент.
Импортирование useIntlayer в React
Хук useIntlayer можно интегрировать в React-приложения, импортируя его в зависимости от контекста:
Клиентский компонент:
typescriptimport { useIntlayer } from "react-intlayer"; // Используется в клиентских React-компонентах
Серверный компонент:
Параметры
Хук принимает два параметра:
- key: Ключ словаря для получения локализованного контента.
- locale (необязательно): Желаемая локаль. По умолчанию используется локаль из контекста, если не указано.
Словарь
Все ключи словаря должны быть объявлены в файлах декларации контента для повышения безопасности типов и предотвращения ошибок. Инструкции по настройке можно найти здесь.
Пример использования в React
Демонстрация использования хука useIntlayer в React-компоненте:
import type { FC } from "react";import { ClientComponentExample, ServerComponentExample } from "@components";import { IntlayerProvider } from "react-intlayer";import { useIntlayer, IntlayerServerProvider } from "react-intlayer/server";import { Locales } from "intlayer";const App: FC<{ locale: Locales }> = ({ locale }) => { const content = useIntlayer("homepage", locale); return ( <> <p>{content.introduction}</p> <IntlayerProvider locale={locale}> <ClientComponentExample /> </IntlayerProvider> <IntlayerServerProvider locale={locale}> <ServerComponentExample /> </IntlayerServerProvider> </> );};
import type { FC } from "react";import { useIntlayer } from "react-intlayer";const ComponentExample: FC = () => { const content = useIntlayer("component-example"); return ( <div> <h1>{content.title}</h1> <p>{content.description}</p> </div> );};
import { useIntlayer } from "react-intlayer/server";const ServerComponentExample = () => { const content = useIntlayer("server-component"); return ( <div> <h1>{content.title}</h1> <p>{content.description}</p> </div> );};
Работа с атрибутами
При локализации атрибутов корректно обращайтесь к значениям контента:
<button title={content.buttonTitle.value}>{content.buttonText}</button>
Дополнительные ресурсы
- Визуальный редактор Intlayer: Для более интуитивного управления контентом обратитесь к документации по визуальному редактору здесь.
Этот раздел специально ориентирован на интеграцию хука useIntlayer в React-приложениях, упрощая процесс локализации и обеспечивая согласованность контента для разных локалей.
Если у вас есть идея по улучшению этой документации, не стесняйтесь внести свой вклад, подав запрос на вытягивание на GitHub.
Ссылка на документацию GitHub