Autor:
    Creación:2025-02-07Última actualización:2025-06-29

    Contenido Condicional / Condición en Intlayer

    Cómo Funciona la Condición

    En Intlayer, el contenido condicional se logra a través de la función cond, que asigna condiciones específicas (típicamente valores booleanos) a su contenido correspondiente. Este enfoque permite seleccionar dinámicamente el contenido basado en una condición dada. Cuando se integra con React Intlayer o Next Intlayer, el contenido apropiado se elige automáticamente según la condición proporcionada en runtime.

    Configuración de Contenido Condicional

    Para configurar contenido condicional en tu proyecto Intlayer, crea un módulo de contenido que incluya tus definiciones condicionales. A continuación, se muestran ejemplos en varios formatos.

    **/*.content.ts
    import { cond, type Dictionary } from "intlayer";
    
    const myConditionalContent = {
      key: "my_key",
      content: {
        myCondition: cond({
          true: "mi contenido cuando es verdadero",
          false: "mi contenido cuando es falso",
          fallback: "mi contenido cuando la condición falla", // Opcional
        }),
      },
    } satisfies Dictionary;
    
    export default myConditionalContent;
    Si no se declara un fallback, la última clave declarada se tomará como fallback si la condición no se valida.

    Uso de Contenido Condicional con 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;

    Recursos Adicionales

    Para obtener información más detallada sobre la configuración y el uso, consulta los siguientes recursos:

    Estos recursos ofrecen más información sobre la configuración y el uso de Intlayer en diversos entornos y frameworks.