Автор:
    Дата створення:2025-02-07Останнє оновлення:2025-06-29

    Умовний вміст / Умова в Intlayer

    Як працює умова

    В Intlayer умовний контент реалізується за допомогою функції cond, яка відображає конкретні умови (зазвичай булеві значення) на відповідний контент. Такий підхід дозволяє динамічно вибирати контент залежно від заданої умови. Під час інтеграції з React Intlayer або Next Intlayer відповідний контент автоматично обирається відповідно до умови, переданої під час виконання.

    Налаштування умовного контенту

    Щоб налаштувати умовний контент у вашому проекті Intlayer, створіть модуль контенту, який містить ваші умовні визначення. Нижче наведено приклади в різних форматах.

    **/*.content.ts
    import { cond, type Dictionary } from "intlayer";
    
    const myConditionalContent = {
      key: "my_key",
      content: {
        myCondition: cond({
          true: "мій контент, коли це true",
          false: "мій контент, коли це false",
          fallback: "мій контент, коли перевірка умови не спрацювала", // Необов'язково
        }),
      },
    } satisfies Dictionary;
    
    export default myConditionalContent;
    Якщо не вказано fallback, останній заданий ключ буде використано як fallback, якщо умова не проходить.

    Використання умовного контенту в React Intlayer

    To utilize conditional content within a React component, import and use the useIntlayer hook from the react-intlayer package. This hook fetches the content for the specified key and allows you to pass in a condition to select the appropriate output.

    **/*.tsx
    import type { FC } from "react";
    import { useIntlayer } from "react-intlayer";
    
    const ConditionalComponent: FC = () => {
    const { myCondition } = useIntlayer("my_key");
    
    return (
      <div>
        <p>
          {
            /* Output: my content when it's true */
            myCondition(true)
          }
        </p>
        <p>
          {
            /* Output: my content when it's false */
            myCondition(false)
          }
        </p>
        <p>
          {
            /* Output: my content when the condition fails */
            myCondition("")
          }
        </p>
        <p>
          {
            /* Output: my content when the condition fails */
            myCondition(undefined)
          }
        </p>
      </div>
    );
    };
    
    export default ConditionalComponent;

    Додаткові ресурси

    Для детальнішої інформації щодо конфігурації та використання зверніться до наведених ресурсів:

    Ці ресурси надають додаткову інформацію щодо налаштування та використання Intlayer у різних середовищах та фреймворках.