Unless

El asistente unless se usa para definir un bloque condicional. Por oposición al asistente if, si la evaluación de la expresión devuelve false, se procesará el bloque.

Sintaxis

{%#unless unlessCondition%} element_1 {%else%} default_element {%/unless%}

Ejemplo

Procese contenido en función de la extensión de dirección de correo electrónico:

{%#unless endsWith(profile.personalEmail.address, ".edu")%}
Some Normal Content
{%else%}
Some edu specific content Content
{%/unless%}

Each

El asistente each se usa para iterar en una matriz.
La sintaxis del asistente es {{#each ArrayName}} YourContent {{/each}}
Podemos hacer referencia a los elementos de matriz individuales usando la palabra clave this dentro del bloque. El índice del elemento de la matriz se puede representar con {{@index}}.

Sintaxis

{{#each profile.productsInCart}}
    <li>{{this.name}}</li>
{{/each}}

Ejemplo

{{#each profile.homeAddress.city}}
  {{@index}} : {{this}}<br>
{{/each}}

Ejemplo

Procese una lista de productos que este usuario tiene en el carro de compras:

{{#each profile.products as |product|}}
    <li>{{product.productName}} {{product.productRating}}</li>
{{/each}}

With

El asistente with se usa para cambiar el token de evaluación de la plantilla-parte.

Sintaxis

{{#with profile.person.name}}
{{this.firstName}} {{this.lastName}}
{{/with}}

El ayudante with también resulta útil para definir una variable de acceso directo.

Ejemplo

Use con para asignar nombres de variables largos a otros más cortos:

{{#with profile.person.name as |name|}}
 Hi {{name.firstName}} {{name.lastName}}!
 Checkout our trending products for today!
{{/with}}

Let

La función let permite almacenar una expresión como variable para usarla posteriormente en una consulta.

Sintaxis

{% let variable = expression %} {{variable}}

Ejemplo

El siguiente ejemplo permite calcular la suma total de los precios de los productos del carro de compras con precios entre 100 y 1000.

{% let sum = 0%}
    {{#each profile.productsInCart as |p|}}
        {%#if p.price>100 and p.price<1000%}
            {%let sum = sum + p.price %}
        {%/if%}
    {{/each}}
{{sum}}
Página anteriorFunciones booleanas y de comparación
Página siguienteFunciones de asignación

Journey Optimizer