Textos dinámicos: Condicionales (Avanzado)
Derek avatar
Escrito por Derek
Actualizado hace más de una semana

Como ya vimos en el anterior artículo, podemos añadir una condición con referencias para que se muestre una frase u otra en función de la respuesta.

💡 ¿Qué son las referencias? Si quieres saber más, consulta el siguiente enlace.

En este artículo, te explicaremos más a fondo cómo funcionan estas condiciones y cómo puedes customizarlas.

Entendiendo qué hacen los delimitadores

Los condicionales en Parallel funcionan con delimitadores que le dicen al texto qué tienen que hacer.

{% if food == "sweet" %}
We have this amazing carrot cake for you!
...
{% endif %}

Todos los condicionales empiezan con este delimitador:

{% if ... %}

Y acaban con este:

{% endif %}

Con el delimitador de if estamos evaluando una condición que, si se cumple, queremos que se muestre el contenido que indicamos.

En el ejemplo estamos indicando que si (if) la referencia food es igual (==) al valor sweet ("sweet") queremos que muestre el contenido que está entre los delimitadores, esto es, "We have this amazing carrot cake for you!"

Existe un segundo delimitador que evalúa otra condición:

{% elsif ... %}

El delimitador elsif proviene de abreviar de "else if" y sirve para decirle al texto que evalúe otra condición si la primera no se ha cumplido. Si esta segunda condición se cumple, el texto mostrará el contenido que hay entre este delimitador y el de endif.

Este delimitador es muy útil cuando queremos evaluar qué textos mostrar en función de distintos valores posibles sobre una misma variable o referencia. De lo contrario, tendríamos que cerrar los condicionales con endif tantas veces como valores distintos estamos evaluando.

Listado de delimitadores

A continuación listamos los delimitadores de los condicionales y explicaremos con el siguiente ejemplo para ver en qué casos se activan.

{% if referencia == "A" %}
Has escogido A.
{% elsif referencia == "B" %}
Has escogido B.
{% else %}
No has escogido ninguna opción conocida.
{% endif %}

  • if: se incluye al principio de la condición.

    {% if referencia == "valor" %}


    Siguiendo el caso del ejemplo, si la respuesta de la referencia es A, se activará esta condición y mostrará el texto "Has escogido A."

    Al activarse esta condición, el resto de condiciones dejarán de evaluarse y no se mostrará ningún otro texto.

  • elsif: opcional.

    {% elsif referencia == "valor" %}

    Siguiendo el caso del ejemplo, si la respuesta de la referencia es B, la primera condición no se activará. El condicional pasará a evaluar la siguiente condición, que al ser B el valor de referencia evaluará como verdadero y mostrará el texto "Has escogido B."

    Al activarse esta condición, el resto de condiciones que siguan después dejarán de evaluarse y no se mostrará ningún otro texto.

  • else: opcional.

    Este delimitador no requiere incluir ninguna expresión a evaluar. Lo utilizaremos cuando queramos que el texto dinámico muestre un contenido siempre que no se haya cumplido ninguna de las condiciones anteriores en los if o elsif.

    {% else %}

    Siguiendo el caso del ejemplo, si la respuesta de la referencia es distinta de A o B, ninguna de las condiciones anteriores se activarán.

    Dado que else evalúa para el resto de casos que no estén previstos anteriormente, se mostrará el texto "No has escogido ninguna opción conocida."

    Nota: Esta condición debe usarse siempre al final del todo antes del delimitador de endif.

  • endif: se incluye al final de la condición.

    Este delimitador no evalúa ninguna condición, pero es necesario para delimitar dónde acaba el condicional y el texto que se puede llegar a mostrar.

    {% endif %}

Operadores de igualdad

  • == (igual a)

    Este operador evalúa si lo que hay a la izquierda (la referencia) es igual a lo que hay a su derecha (el valor con el que queremos comparar).

    Si son iguales, la condición evalua como verdadera y se mostrará el contenido que haya dentro de la condición. En caso contrario, no mostrará nada.

  • != (no igual a)

    Este operador evalúa si lo que hay a la izquierda (la referencia) es distinto de lo que hay a su derecha (el valor con el que queremos comparar).

    Si a ambos lados del operador son distintos, la condición evalua como verdadera y se mostrará el contenido que haya dentro de la condición. Si son iguales, la condición evalua como falsa y no se mostrará el contenido.

Consultar la información de campos con opciones

Es habitual utilizar campos de desplegable o campos de opciones al diseñar las plantillas cuando queremos incluir una serie de valores predeterminados, puesto que facilita la automatización de posibilidades que conocemos de antemano.

Por eso, si trabajas con cualquiera de los campos anteriores, tendrás que utilizar la referencia seguida del texto "[0]" para poder acceder a la opción que sea seleccionada.

Veámoslo con el siguiente ejemplo donde hemos cambiado el tipo de campo de texto al de opciones:

Para que sigan funcionando los condicionales de antes, vamos a añadir la cadena de texto "[0]" inmediatamente después de la referencia: food[0]

Si lo has hecho correctamente, al previsualizar el texto dinámico cambiará según la opción que escojas:

Seguir aprendiendo sobre textos dinámicos

Ahora que ya has aprendido a generar textos dinámicos, te animamos a seguir aprendiendo y potenciar tus procesos con las siguientes guías:

¿Ha quedado contestada tu pregunta?