Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Uso de ayudantes de plantillas de mensajes
Con las plantillas de Amazon Pinpoint, los clientes pueden crear plantillas de mensajes reutilizables basadas en el lenguaje Handlebars.js. Los ayudantes ofrecen una variedad de características, como dar formato a un precio según la moneda de una región específica o agregar una ubicación basada en la zona horaria. Un ayudante puede usar una cadena o un entero específicos para el valor o una variable de mensaje de Amazon Pinpoint específica.
Estas son las categorías de ayudantes, que se describen en las secciones siguientes:
En esta sección se describen los ayudantes integrados que proporciona Handlebars. Para ver la lista completa, consulte los ayudantes integrados
-
each
: itera una lista.nota
El tamaño máximo de la lista es de 15 elementos.
-
if
: evalúa una instrucción.
- cada
-
Itera una lista. Este ayudante usa solo una instrucción de bloque. Si lo desea, puede:
-
Pase
@index
en la solicitud para hacer referencia al índice de bucle actual. -
Use el ayudante
this
para hacer referencia al elemento actual que está iterando. -
Devuelva la respuesta del ayudante en una lista, con la etiqueta
<li>
.
Uso
{{#each
value
}}El valor en la posición
{{@index}}
es{{this}}
.{{else}}
La condición es falsa.
{{/each}}
each
debe ir precedido de un signo de almohadilla (#
) y concluir con{{/each}}
de cierre en la instrucción de bloque.Ejemplo
En este ejemplo,
each
se utiliza para devolver una lista de los colores favoritos de un usuario. Parafalse
, se devuelve una instrucciónelse
. Si la solicitud es la siguiente:{{#each User.UserAttributes.FavoriteColors}}
<li>{{this}}</li>
{{else}}
You have no favorite colors.
{{/each}}
devuelve-
red
-
blue
-
yellow
para una declaración verdadera.
-
- if
-
Evalúa si algo es cierto y devuelve una respuesta en función de la evaluación.
Uso
{{#if
value
}}El valor no está indefinido
{{else}}
El valor es indefinido
{{/if}}
if
debe ir precedido de un signo de almohadilla (#
) y concluir con{{/if}}
de cierre en la instrucción de bloque.Ejemplo
En este ejemplo, el ayudante
if
se utiliza para evaluar si el nombre de un usuario es el primero. Si se encuentra el nombre, se devuelve un saludo que pasa por el nombre del usuario en la respuesta. De lo contrario, la instrucciónelse
devuelve un saludo alternativo.{{#if User.UserAttributes.FirstName.[0]}}
Hello
{{User.UserAttributes.FirstName.[0]}},
{{else}}
Hello,
{{/if}}
returns
Hello, Jane
si elif
ayudante es verdadero.
En esta sección se describen los ayudantes condicionales.
Los ayudantes condicionales se pueden usar en una sola línea o en una instrucción de bloque. Puede personalizar la respuesta independientemente del método de ayudante que utilice. Puede pasar ayudantes condicionales adicionales en las instrucciones de una sola línea y en las de bloque. Los siguientes asistentes condicionales muestran el uso primero de una sola línea y, después, de una instrucción de bloque mediante una cláusula else
opcional. Estos son los ayudantes condicionales:
-
and
— Compara si todos los elementos pasados son iguales. -
eq
: comprueba si dos elementos son iguales. -
gt
: comprueba si un elemento es mayor que otro. -
gte
: comprueba si un elemento es mayor que otro o igual a otro. -
if
— Evalúa si algo es cierto. -
lt
: comprueba si un elemento es inferior a otro. -
lte
: comprueba si un elemento es inferior o igual a otro. -
neq
: evalúa si dos elementos no son iguales. -
not
— Invierte la respuesta de una operación booleana. -
or
: compara si alguno de los elementos del argumento es igual.
- y
-
Compara si todos los elementos transferidos en un argumento son iguales y, a continuación, devuelve la respuesta en función del resultado. Este ayudante se puede utilizar para valores no booleanos. Debe transferir al menos dos elementos para la condición.
Uso
-
{{and
valuea
valueb
valuec
valued
yes='y
' no='n
'}}Se puede reemplazar
y
yn
con otros valores, comoyes
yno
, o cualquier otra cadena que desee que se devuelva, según la condición. -
{{#and
valuea
valueb
}}La condición es verdadera.
{{else}}
La condición es falsa.
{{/and}}
and
debe ir precedido de un signo de almohadilla (#
) y concluir con{{/and}}
de cierre en la instrucción de bloque.
Ejemplo
En este ejemplo,
eq
se utiliza en la instrucción de bloqueand
para determinar si las dos cadenas pasadas para los atributosLocation.City
yLocation.Country
son verdaderas. Si ambas condiciones son iguales, se devuelve una instrucción verdadera. Si alguno de esos atributos es falso, se devuelve una instrucciónelse
.{{#and (eq Location.City "Los Angeles") (eq Location.Country "US")}}
You live in Los Angeles and the US.
{{else}}
You don’t live in Los Angeles and the US.
{{/and}}
-
- eq
-
Comprueba si dos elementos son iguales o si el valor de un elemento es igual al de una cadena pasada.
Uso
-
{{eq
valuea
valueb
yes='y
' no='n
'}}Se puede reemplazar
y
yn
con otros valores, comoyes
yno
, o cualquier otra cadena que desee que se devuelva, según la condición. -
{{#eq
valuea
valueb
}}La condición es verdadera.
{{else}}
La condición es falsa.
{{/eq}}
eq
debe ir precedido de un signo de almohadilla (#
) y concluir con{{/eq}}
de cierre en la instrucción de bloque.
Ejemplo
En este ejemplo,
eq
se usa para evaluar si el valor deUser.UserAttributes.FavoriteColors.[0]
esRed
. Si la respuesta estrue
, se devuelve una afirmación verdadera. Si la respuesta esfalse
, se devuelve una instrucciónelse
.{{#eq User.UserAttributes.FavoriteColors.[0] "
red
"}}Your favorite color is red.
{{else}}
You don't like red.
{{/eq}}
-
- gt
-
Prueba si el valor de un elemento es mayor que otro.
Uso
-
{{gt
valuea
valueb
yes='y
' no='n
'}}Puede reemplazar
y
yn
con otros valores, comoyes
yno
, o cualquier otra cadena que desee que se devuelva, según la condición. -
{{#gt
valuea
valueb
}}La condición es verdadera.
{{else}}
La condición es falsa.
{{/gt}}
gt
debe ir precedido de un signo de almohadilla (#
) y concluir con{{/gt}}
de cierre en la instrucción de bloque.
Ejemplo
En este ejemplo, el ayudante compara el valor del
User.UserAttributes.UserAge.[0]
atributo con una cadena17
, para comprobar si la edad del usuario es mayor de 17 años. Si la respuesta estrue
, se devuelve una instrucción verdadera. Si la respuesta esfalse
, se devuelve una instrucciónelse
.{{#gt User.UserAttributes.UserAge.[0] "
17
"}}You are old enough to rent a car.
{{else}}
You are not old enough to rent a car.
{{/gt}}
-
- gte
-
Prueba si el valor de un elemento es mayor o igual que otro.
Usage
-
{{gte
valuea
valueb
yes='y
' no='n
'}}Puedes reemplazar
y
yn
con otros valores, comoyes
yno
, o cualquier otra cadena que desee que se devuelva, según la condición. -
{{#gte
valuea
valueb
}}La condición es verdadera.
{{else}}
La condición es falsa.
{{/gte}}
get
debe ir precedido de un signo de almohadilla (#
) y concluir con{{/gte}}
de cierre en la instrucción de bloque.
Ejemplo
En este ejemplo, el ayudante compara el
User.UserAttributes.UserAge.[0]
atributo con una cadena18
, para comprobar si la edad del usuario es mayor o igual a 18 años. Si la respuesta estrue
, se devuelve una instrucción verdadera. Si la respuesta esfalse
, se devuelve una instrucciónelse
.{{#gte User.UserAttributes.UserAge.[0] "
18
"}}You are old enough to rent a car.
{{else}}
You are not old enough to rent a car.
{{/gte}}
-
- if
-
Evalúa si algo es cierto y devuelve una respuesta en función de la evaluación.
Uso
-
{{#if
value
}}Puedes reemplazar
y
yn
con otros valores, comoyes
yno
, o cualquier otra cadena que desee que se devuelva, según la condición. -
{{#if
}}value
La condición es verdadera.
{{else}}
La condición es falsa.
{{/if}}
if
debe ir precedido de un signo de almohadilla (#
) y concluir con{{/if}}
de cierre en la instrucción de bloque.
Ejemplo
En este ejemplo, el ayudante se utiliza para evaluar si el nombre de un usuario es el primero. Si se encuentra el nombre, se devuelve un saludo que pasa por el nombre del usuario en la respuesta. De lo contrario, la instrucción else devuelve un saludo alternativo.
{{#if User.UserAttributes.FirstName.[0]}}
Hello
{{User.UserAttributes.FirstName.[0]}}
,
{{else}}
Hello,
{{/if}}
returns
Hello Jane,
si el ayudante es verdadero. -
- lt
-
Prueba si el valor de un elemento es inferior al valor de otro.
Uso
-
{{lt
valuea
valueb
yes='y
' no='n
'}}Puedes reemplazar
y
yn
con otros valores, comoyes
yno
, o cualquier otra cadena que desee que se devuelva, según la condición. -
{{#lt
valuea
valueb
}}La condición es verdadera.
{{else}}
La condición es falsa.
{{/lt}}
lt
debe ir precedido de un signo de almohadilla (#
) y concluir con{{/lt}}
de cierre en la instrucción de bloque.
Ejemplo
En este ejemplo, el ayudante compara el
User.UserAttributes.UserAge.[0]
atributo con una cadena18
, para comprobar si el usuario es menor de 18 años. Si la respuesta estrue
, se devuelve una instrucción verdadera. Si la respuesta esfalse
, se devuelve una instrucciónelse
.{{#lt User.UserAttributes.UserAge.[0] "
18
"}}You are not old enough to rent a car.
{{else}}
You are old enough to rent a car.
{{/lt}}
-
- lte
-
Prueba si el valor de un elemento es inferior o igual que otro.
Uso
-
{{lte
valuea
valueb
yes='y
' no='n
'}}Puedes reemplazar
y
yn
con otros valores, comoyes
yno
, o cualquier otra cadena que desee que se devuelva, según la condición. -
{{#lte
valuea
valueb
}}La condición es verdadera.
{{else}}
La condición es falsa.
{{/lte}}
lte
debe ir precedido de un signo de almohadilla (#
) y concluir con{{/lte}}
de cierre en la instrucción de bloque.
Ejemplo
En esta sentencia de bloque, el ayudante compara el
User.UserAttributes.UserAge.[0]
atributo con una cadena17
, para comprobar si el usuario tiene 17 años o menos. Si la respuesta estrue
, se devuelve una instrucción verdadera. Si la respuesta esfalse
, se devuelve una instrucciónelse
.{{#lte User.UserAttributes.Age.[0] "
17
"}}You are not old enough to rent a car.
{{else}}
You are old enough to rent a car.
{{/lte}}
-
- neq
-
Pruebe si dos elementos no son iguales.
Uso
-
{{neq
valuea
valueb
yes='y
' no='n
'}}Puedes reemplazar
y
yn
con otros valores, comoyes
yno
, o cualquier otra cadena que desee que se devuelva, según la condición. -
{{#neq
valuea
valueb
}}La condición es verdadera.
{{else}}
La condición es falsa.
{{/neq}}
neq
debe ir precedido de un signo de almohadilla (#
) y concluir con{{/neq}}
de cierre en la instrucción de bloque.
Ejemplo
En esta sentencia de bloque, el
User.UserAttributes.FavoriteColors.[0]
atributo se compara con una cadena
. Si la respuesta esRed
true
, se devuelve una instrucción verdadera. Si la respuesta esfalse
, se devuelve una instrucciónelse
.{{#neq User.UserAttributes.Favorite.Colors.[0] "
red
"}}You do not like red.
{{else}}
You like red.
{{/neq}}
-
- no
-
Invierte la respuesta de una operación booleana, de modo que si
not
es una comparación positiva, se devuelve una instruccióntrue
. Si la respuesta es falsa, se devuelve una instrucción else.Uso
-
{{not
value
yes='y
' no='n
'}}Se puede reemplazar
y
yn
con otros valores, comoyes
yno
, o cualquier otra cadena que desee que se devuelva, según la condición. -
{{#not
}}value
La condición es verdadera.
{{else}}
La condición es falsa.
{{/not}}
not
debe ir precedido de un signo de almohadilla (#
) y concluir con{{/not}}
de cierre en la instrucción de bloque.
Ejemplo
En esta sentencia de bloque, el
User.UerAttributes.FavoriteColors.[0]
atributo se compara con una cadenared
, utilizando eleq
ayudante. A continuación, el ayudantenot
devuelve lo contrario del ayudanteeq
. Si la respuesta devuelve un color que no seared
a, se devuelvetrue
una declaración. Si la respuesta regresared
, se devuelve unaelse
declaración que indica que es falsa.{{#not (eq User.UserAttributes.Favorite.Colors.[0] "
red
")}}You do not like red.
{{else}}
You like red.
{{/not}}
Ejemplo
En este ejemplo,
{{not (eq User.UserAttributes.FavoriteColors.[0] "
red
")}}devuelve falso si
User.UserAttributes.FavoriteColors.[0]
esred
. -
- o
-
Compara si algunos de los elementos en el argumento son iguales y, a continuación, devuelve la respuesta en función del resultado. Este ayudante se puede utilizar para valores no booleanos.
Uso
-
{{or
valuea
valueb
valuec
valued
yes='y
' no='n
'}}Se puede reemplazar
y
yn
con otros valores, comoyes
yno
, o cualquier otra cadena que desee que se devuelva, según la condición. Debe transferir al menos dos elementos para la condición. -
{{#or
valuea
valueb
}}La condición es verdadera.
{{else}}
La condición es falsa.
{{/or}}
or
debe ir precedido de un signo de almohadilla (#
) y concluir con{{/or}}
de cierre en la instrucción de bloque.
Ejemplo
En esta instrucción de bloque
or
, se comparan adicionalmente dos cadenas del atributoLocation.City
mediante el ayudanteeq
. Si alguno de esos atributos estrue
, se devuelve una instrucción. Si una o más de las respuestas esfalse
, se devuelve una instrucciónelse
.{{#or (eq Location.City "Los Angeles") (eq Location.City "Seattle")}}
You live on the West Coast of the United States.
{{else}}
You do not live on the West Coast of the United States.
{{/or}}
-
En esta sección se describen los siguientes ayudantes de cadenas:
-
abbreviate
: trunca un valor. -
capitalize
: escribe en mayúscula cada palabra entre espacios en blanco. -
capitalizeFirst
: pone en mayúscula el primer carácter de un valor. -
center
: centra un valor. -
cut
: recorta un valor. -
dateFormat
: establece el estilo de fecha. -
inflect
: devuelve una cadena singular o plural en función del recuento. -
join
: se une a una matriz, un iterador o un objeto iterable. -
ljust
: justifica un valor en el margen izquierdo. -
lower
: convierte un valor a minúsculas. -
now
: imprime la fecha actual. -
ordinalize
: ordinaliza un valor numérico. -
replace
: sustituye una cadena por otra. -
rjust
: justifica un valor en el margen derecho. -
slugify
: convierte un valor a minúsculas y elimina los caracteres que no son palabras, convierte los espacios en guiones y elimina los espacios en blanco del final. -
stripTags
— Elimina las HTML etiquetas [X] de un valor. -
substring
: devuelve una nueva cadena como subcadena de un valor pasado. -
upper
: convierte el valor pasado a mayúsculas.
-
yesno
: sustituye verdadero, falso y no por Sí, No y Quizás.
- abreviar
-
Trunca un valor si el valor supera el número especificado. Los espacios en blanco se incluyen en el recuento de longitudes. Se muestra una elipsis en la respuesta para indicar un valor truncado. La elipsis cuenta para el valor truncado de la respuesta. Este tipo de ayudante es útil si tiene una tabla grande y un espacio mínimo. Al truncar los valores de una celda, se obtiene un aspecto más uniforme de la tabla.
Uso
{{abbreviate
, sustituyendovalue
X
}}X
con un valor numérico que indica el número de caracteres que se deben conservar. Los números negativos no se admiten.Ejemplo
En este ejemplo,
abbreviate
se utiliza para truncarUser.UserAttributes.LastName.[0]
a seis (6) caracteres. La respuesta incluye una elipsis, cuyos puntos cuentan para el total de seis caracteres.{{abbreviate
devuelveUser.UserAttributes.LastName.[0]
6
}}Ale...
ifAlejandro
es el valor de[0]
. - escribir en mayúsculas
-
Escriba en mayúsculas cada palabra entre espacios en blanco.
Uso
{{capitalize
value
}}Ejemplo
En este ejemplo, se aplica el uso inicial de mayúsculas a cada palabra de la entrada
Attributes.description.[0]
.{{capitalize
Attributes.description.[0]
}}Si
Attributes.description.[0]
devuelveMy First Post
, si el valor deAttributes.description.[0]
esmy first post
. - capitalizeFirst
-
Escribe en mayúsculas el primer carácter de un valor.
Uso
{{capitalizeFirst
value
}}Ejemplo
En este ejemplo, el uso de mayúsculas se aplica al primer carácter de la primera palabra de la entrada
Attributes.description.[0]
.{{capitalizeFirst
devuelveAttributes.description.[0]
}}My first post
, si el valor de
esAttributes.description.[0]
my first post
.Ejemplo
- centro
-
Centra el valor en un campo de un ancho determinado mediante el número especificado. Si lo desea, puede pasar un carácter para que se muestre como relleno o dejar el campo en blanco. Si no se pasa ningún carácter, se utiliza un espacio en blanco.
Uso
{{center
, en sustituciónvalue
size=X
[pad=" "}}X
con un valor numérico.Si
pad
se mantiene en blanco, se utiliza un espacio en blanco como relleno en la respuesta. Si pasa un carácter, ese carácter se muestra en cada espacio del relleno. Los números negativos no se admiten.Ejemplo
En este ejemplo, el valor de
Location.City
se centra con un tamaño de19
.{{center
devuelveLocation.City
size=19
}}" Los Angeles "
SiLocation.City
esLos Angeles
. Tenga en cuenta que las citas que se muestran en el resultado del ejemplo se proporcionan únicamente para enfatizar. - cortar
-
Elimina el valor especificado de una cadena.
Uso
{{cut
, que sustituye el espacio dentro del parámetro de comillas por el valor que se va a cortar. Si no se pasa ningún valor de parámetro, se utiliza un espacio en blanco.value
[" "
]}}Ejemplo
En este ejemplo se elimina la letra
e
delLocation.City
atributo.{{cut
devuelveLocation.City
"e
"}}Los Angls
si[Location.City
esLos Angeles
. - dateFormat
-
Establece el estilo de fecha predeterminado para la fecha en cualquier respuesta. Para obtener una lista de la zona horariaIDs, consultehttps://en.wikipedia.org/wiki/List_of_tz_database_time_zones
. Uso
{{dateFormat date [inputFormat="format1"] [outputFormat="format2"] [tz=timeZoneId] [locale=localeID]}}
El parámetro
format
debe ser uno de:-
“
full
”: formato de fecha completo. Por ejemplo:Tuesday, September 19, 2020
-
“
long
”: formato de fecha largo. Por ejemplo:September 19, 2020
-
“
medium
”: formato de fecha medio. Por ejemplo:Sept 19, 2020
-
“
short
”: formato de fecha corto. Por ejemplo:9/19/20
-
“
pattern
”: utiliza un formato de patrón de fechas personalizado. Para obtener más información acerca de patrones de fecha, consulte https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
“
locale
”: utiliza un formato de fecha basado en una configuración local determinada. Para obtener más información sobre configuraciones locales, consulte https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/LocaleUtils.html#toLocale-java.lang.String-. Si no se pasa un formato,
medium
se utiliza de forma predeterminada.Ejemplo
En este ejemplo, la
[0]
entrada
esUser.UserAttributes.StartDate.[0]
09/19/2020
y se envía un mensaje a un usuario con el formato defull
fecha basado enAmerica/Los_Angeles
zona horaria.We can meet with you any time on
{{dateFormat User.UserAttributes.StartDate.[0] inputFormat="MM/dd/yyyy" outputFormat="full" tz=America/Los_Angeles}}.
devuelveWe can meet with you any time on Tuesday, September 19, 2020.
-
- modular
-
Devuelve una cadena singular o plural en función del valor del recuento.
Uso
{{inflect
count
singular
plural
[includeCount=false]}}-
Ingrese las formas singular y plural de la cadena que desee incluir en el argumento.
-
Si
includeCount
se establece enfalse
, no se devuelve ningún recuento en la respuesta. Si se establece entrue
,count
se incluye en la respuesta.
Ejemplo
Los siguientes ejemplos muestran la inflexión de una compra de manzanas, con y sin
includeCount
.Thank you for your purchase of {{inflect
devuelve:3
apple
apples
includeCount=false
}}.Thank you for your purchase of apples.
Si
includeCount
está establecido entrue
, entonces la respuesta esThank you for your purchase of 3 apples.
-
- unirse
-
Se une a una matriz, un iterador o un objeto iterable. La respuesta devuelve una lista en la que cada valor de la lista está concatenado por el carácter que pase en
join
. Por ejemplo, es posible que separe los valores con una coma (,
). El valor de este ayudante debe ser una lista sin un índice de posición de atributos. Por ejemplo, podría serAttributes.custom_attribute
.Uso
{{join
value
" // " [prefix=""] [suffix=""]}}Ejemplo
En este ejemplo, se devuelve una lista de colores, separada por una coma y un espacio (
", "
):{{join
devuelveAttributes.favorite_colors
",
"}}blue, red, green
siAttributes.favorite_colors
es la listablue,red,green
. - ljust
-
Justifica el valor en el margen izquierdo y agrega espacio a la derecha para que la longitud del valor coincida con el número. Los números negativos no se admiten.
Si lo desea, puede pasar un carácter para mostrar para
pad
o dejar el campo en blanco. Si deja en blanco el valorpad
, el valor predeterminado es un espacio en blanco.Uso
{{ljust
, dóndevalue
size=X
[pad=" "]}}X
es la longitud total del valor, incluidos los espacios en blanco.Ejemplo
En este ejemplo, un valor de justificación izquierdo de
15
se aplica a Location.City.{{ljust
devuelveLocation.City
size=15
}}"Los Angeles "
si el valor de esLocation.City
Los Angeles
. Tenga en cuenta que las citas que se muestran en el resultado del ejemplo se proporcionan únicamente para enfatizar. - lower
-
Convierte un valor a minúsculas.
Uso
{{lower
value
}}Ejemplo
En este ejemplo, la
[0]
entrada paraUser.UserAttributes.LastName.[0]
se cambia a minúscula.{{lower
devuelveUser.UserAttributes.LastName.[0]
}}santos
ifSantos
es el valor de[0]
. - now
-
Imprime la fecha actual en función del ID de zona horaria pasado. Para obtener una lista de la zona horariaIDs, consultehttps://en.wikipedia.org/wiki/List_of_tz_database_time_zones
. Uso
{{now ["format"] [tz=timeZoneId] [locale=localeID]}}
El parámetro
format
debe ser uno de:-
“
full
”: formato de fecha completo. Por ejemplo:Tuesday, September 19, 2020
-
“
long
”: formato de fecha largo. Por ejemplo:September 19, 2020
-
“
medium
”: formato de fecha medio. Por ejemplo: 19 de septiembre de 2020 -
“
short
”: formato de fecha corto. Por ejemplo: 19/9/20 -
“
pattern
”: un patrón de fechas. Para obtener más información acerca de patrones de fecha, consulte https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
“
locale
”: utiliza un formato de fecha basado en una configuración local determinada. Para obtener más información sobre configuraciones locales, consulte https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/LocaleUtils.html#toLocale-java.lang.String-. Si no se pasa un formato,
medium
se utiliza de forma predeterminada.Ejemplo
En este ejemplo, se devuelve la fecha actual de Los Ángeles con un formato
medium
.{{now "medium" tz=
devuelveAmerica/Los_Angeles
}}Sept 19, 2020
. -
- ordinalizar
-
Ordinaliza el valor numérico pasado en el argumento. Por ejemplo:
1
se ordinaliza como1st
y2
tan2nd
. Solo se admiten valores numéricos.Uso
{{ordinalize [
number
]}}Ejemplo
En este ejemplo, la entrada
[0]
deUser.UserAttributes.UserAge
se ordinaliza y se devuelve junto con un mensaje.Congratulations on your {{ordinalize User.UserAttributes.UserAge.[0]}} birthday!
devuelve22
ordinalizado como22nd
.Congratulations on your 22nd birthday!
- replace
-
Sustituye una cadena por otra. Una cadena o un valor numérico deben ser literales. No se admiten caracteres comodín.
Uso
{{replace
stringToReplace
replacementValue
}}Ejemplo
En este ejemplo, un guion bajo (_) sustituye un espacio en blanco.
{{replace
devuelveLocation.City
" " "_"
}}Los_Angeles
si el esLocation.City
Los Angeles
. - rjust
-
Justifica el valor en el margen derecho y agrega espacio a la derecha para que la longitud del valor coincida con el número. Los números negativos no se admiten.
Si lo desea, puede pasar un carácter para mostrar para
pad
o mantener el campo en blanco. Si mantiene en blanco el valor depad
, el valor predeterminado es un espacio en blanco.Uso
{{rjust
, dóndevalue
size=X
[pad=" "]}}X
es la longitud total del valor, incluidos los espacios en blanco.Ejemplo
En este ejemplo, un valor de justificación correcto de
15
se aplica alLocation.City
atributo.{{rjust
devuelveLocation.City
size=15
}}" Los Angeles"
. siLocation.City
esLos Angeles
. Tenga en cuenta que las citas que se muestran en la salida se proporcionan únicamente para enfatizar. - slugify
-
Convierte el valor pasado a minúsculas, elimina los caracteres que no son palabras (alfanuméricos y guiones bajos), convierte los espacios en guiones y elimina los espacios en blanco del principio y del final.
Uso
{{slugify
value
}}Ejemplo
En este ejemplo, slugify se realiza para el atributo
Location.City
.{{slugify
devuelveLocation.City
}}los-angeles
siLocation.City
esLos Angeles
. - stripTags
-
Elimina las HTML etiquetas [X] de un valor.
Uso
{{stripTags
value
}}Ejemplo
En este ejemplo, las HTML etiquetas del usuario. UserAttributes.interest. [0] se eliminan.
{{stripTags
devuelveUser.UserAttributes.interests.[0]
}}Art
, si loUser.UserAttributes.interests.[0]
es<h1>Art</h1>
. - subcadena
-
Devuelve una nueva cadena como subcadena del valor pasado. La longitud y la posición vienen determinadas por los parámetros
startOffset
yendOffset
, que deben ser números enteros. Los números negativos no se admiten. SiendOffset
no se transfiere, la subcadena utiliza el valor final original de la cadena.Uso
{{substring
value
startOffset
[endOffset]
}}Ejemplo
En este ejemplo, se aplica un desfase endOffset de 4 y 9 al atributo Location.City.
{{substring
devuelveLocation.City 4 9
}}
si Los Ángeles es el valor de esAngel
Location.City
Los Angeles
. - upper
-
Convierte el valor pasado a mayúsculas.
Uso
{{upper
value
}}Ejemplo
En este ejemplo, la entrada
[0]
del atributoUser.UserAttributes.LastName
se convierte completamente en mayúsculas.{{upper User.UserAttributes.LastName.[0]}}
devuelveROE
si elUser.UserAttributes.LastName.[0]
valor esRoe
. - yesno
-
Sustituye
true
,false
yNULL
conYes
,No
yMaybe
.Uso
{{yesno value [yes="yes"] [no="no"] maybe=["maybe"]}}
Ejemplo
En este ejemplo, el atributo
IsUserSubscribed
devuelve si un usuario está suscrito a una lista determinada.{{yesno Attributes.IsUserSubscribed}}
devuelveyes
siAttributes.IsUserSubscribed
estrue
.
En esta sección se describen los ayudantes matemáticos y de codificación.
-
add
: devuelve la suma de dos números. -
ceiling
: redondea un entero hasta su límite matemático. -
decode64
— Decodifica un valor codificado en base64 en una cadena. -
divide
: devuelve el cociente de dos números. -
encode64
— Codifica una cadena mediante base64. -
floor
: redondea un entero hasta su límite matemático. -
md5
— Calcula una cadena pasada mediante el algoritmo. MD5 -
modulo
— Devuelve el resto de dos números usando puntos flotantes. -
multiply
: devuelve el producto de dos números. -
round
: redondea un decimal al número entero más cercano. -
sha256
— Calcula una cadena pasada usando SHA -256. -
sha512
— Calcula una cadena pasada usando -512. SHA -
subtract
: devuelve la diferencia de dos números. -
uuid
— Genera aleatoriamente un UUID en un formato de 128 bits.
- agregar
-
Devuelve la suma de dos números junto con los puntos flotantes.
Uso
{{add
arg1
arg2
}}Ejemplo
{{add
devuelve5 2.3
}}7.3
- límite
-
Redondea un entero hasta su límite matemático, que es el número entero más alto más cercano al valor pasado.
Uso
{{ceiling
value
}}Ejemplo
{{ceiling
devuelve5.23
}}6
- decode64
-
Decodifica un valor codificado en base64 en una cadena.
Uso
{{decode64 "
string
"}}Ejemplo
{{decode64 "
devuelveSGVsbG8gd29ybGQ
="}}Hello World
- dividir
-
Devuelve el cociente de dos números, incluidos los puntos flotantes.
Uso
{{divide
arg1
arg2
}}Ejemplo
{{divide
devuelve5 2.3
}}2.17391304
- encode64
-
Codifica la cadena pasada en el argumento mediante base64.
Uso
{{encode64 "
string
"}}Ejemplo
{{encode64 "
Hello World"
}}SGVsbG8gd29ybGQ=
- floor
-
Redondea un entero hasta su límite matemático, que es el número entero más bajo más cercano al valor pasado.
Uso
{{floor
value
}}Ejemplo
{{floor
devuelve5.23
}}5
- md5
-
Aplica un código hash a una cadena pasada mediante el algoritmo. MD5
Uso
{{md5 "
string
"}}Ejemplo
{{md5 "
Hello World
"}}3e25960a79dbc69b674cd4ec67a72c62
- módulo
-
Devuelve el resto de dos números utilizando puntos flotantes.
Uso
{{modulo
arg1
arg2
}}Ejemplo
{{modulo
devuelve7 2
}}1
- multiplicar
-
Devuelve el producto de dos números, con los puntos flotantes.
Uso
{{multiply
arg1
arg2
}}Ejemplo
{{multiply
devuelve5 2.3
}}11.5
- round
-
Redondea un decimal al número entero más cercano.
Uso
{{round
value
}}Ejemplo
You spent an average of {{round
devuelve:19.21
}} minutes on our website each day.You spent an average of 19 minutes on our website each day.
- sha256
-
Aplica un código hash a una cadena pasada mediante una seguridad criptográfica SHA de 256 bits.
Uso
{{sha256 "
string
"}}Ejemplo
{{sha256 "
devuelveHello World
"}}a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e
- sha512
-
Aplica un código hash a una cadena pasada mediante SHA una seguridad criptográfica de -512.
Uso
{{sha512 "
string
"}}Ejemplo
{{sha512 "
devuelveHello World
"}}2c74fd17edafd80e8447b0d46741ee243b7eb74dd2149a0ab1b9246fb30382f27e853d8585719e0e67cbda0daa8f51671064615d645ae27acb15bfb1447f459b
- restar
-
Devuelve la diferencia de dos números, con los puntos flotantes.
Uso
{{subtract
arg1
arg2
}}Ejemplo
devuelve{{subtract
5 2.3
}}2.7
- uuid
-
Genera aleatoriamente un UUID en un formato estándar de 128 bits. No es necesario ingresar ningún valor en el argumento.
Uso
{{uuid}}
Ejemplo
devuelve{{uuid}}
95f36680-152c-4052-99ec-cc3cdf7ca594
Si bien técnicamente no son una ayuda, los parciales en línea son la forma en que Handlebars optimiza las plantillas que incluyen cadenas repetidas, lo que es mejor reutilizarlas. Para obtener más información, consulta los parciales en línea en handlebarsjs.com.
Uso
{{#* inline "inlineName"}}Content to reuse{{/inline}}
Para hacer referencia al contenido del parcial insertado en otro lugar, use:
{{> inlineName}}
Ejemplo
En el siguiente ejemplo, se crea una versión parcial en línea que incluye el nombre del destinatario y, si está disponible, el apellido. Para ello, se añade el siguiente código al principio de la plantilla:
{{#* inline "
fullName
"}}
{{User.UserAttributes.FirstName.[0]}} {{#if
User.UserAttributes.LastName.[0]}} {{User.UserAttributes.LastName.[0]}} {{/if}}
{{/inline}}
Después de crear la función parcial fullName
, puede incluirla en cualquier lugar de la plantilla agregando delante del nombre de la función parcial un símbolo >
(mayor que), seguido de un espacio, como en el siguiente ejemplo: {{>
fullName}}
.
Hola, {{>fullName}}
devuelve el nombre y apellidos del usuario si es verdadero, por ejemplo, Hello
Jane Doe
. De lo contrario, si no se encuentra ningún apellido, Hello
Jane
se devuelve.
Los manillares incluyen características adicionales además de las documentadas aquí. Para obtener más información, consulte handlebarsjs.com
Uso de variables con ayudantes de plantillas de mensajes
Los atributos personalizados de Amazon Pinpoint, por ejemplo User.UserAttributes.LastName
, se almacenan como una lista, independientemente de si hay un solo elemento o varios. Al pasar una lista a un ayudante que espera una cadena, debe especificar el valor del índice del atributo junto con el nombre del atributo. Este valor del índice de atributos indica la posición de un valor de la lista de atributos: .[0]
para la primera entrada de la lista, .[1]
para la segunda, .[2]
para la tercera, etc. Por ejemplo, supongamos que está utilizando el asistente upper
para convertir la primera entrada ([0]
) de User.UserAttributes.LastName
en mayúsculas. El uso del ayudante es {{upper
y el atributo tiene el formato correspondiente value
}}User.UserAttributes.LastName
. Reemplazar value
con el nombre del atributo y el valor del índice del atributo de la
siguiente manera:. .[0]
{{upper
User.UserAttributes.LastName.[0]}}
A continuación, la respuesta devuelve la entrada [0]
de la lista, formateada en mayúsculas. Por ejemplo, si el valor de [0]
es Santos
, la respuesta devuelve SANTOS
.
Los nombres de los atributos personalizados de Amazon Pinpoint admiten espacios. Para que se llame a un atributo personalizado"Last Name"
, debe formatearlo comoUser.UserAttributes.[Last Name]
. Para acceder a la primera entrada de la lista de índices de atributos, el formato esUser.UserAttributes.[Last
Name].[0]
.
Un nombre de atributo personalizado puede contener hasta 50 caracteres. Un valor de atributo puede contener hasta 100 caracteres. Al definir el nombre de un atributo personalizado, evite utilizar los siguientes caracteres: signo numérico (#), dos puntos (:), signo de interrogación (?) , barra diagonal inversa (\) y barra diagonal (/). La consola Amazon Pinpoint no puede mostrar nombres de atributos que contengan estos caracteres. Esta restricción no se aplica a los valores de atributo.
Uso de ayudantes anidados
Puede agrupar varios ayudantes de plantillas de mensajes uno dentro del otro. El siguiente ejemplo muestra cómo aplicar formato a dos ayudantes: {{ first helper (second helper)}}
. El segundo ayudante se procesa primero, seguido del primer ayudante. Recuerde que el primer ayudante siempre determina el resultado. Los ayudantes posteriores deben estar anidados dentro del ayudante anterior de la siguiente manera: {{ first helper (second helper (third helper)
)}}
.
El siguiente ejemplo muestra cómo anidar dos ayudantes para cambiar JANE
a Jane
: {{capitalizeFirst
(lower "
. JANE
")}}lower
primero convierte JANE
en jane
. Luego capitalizeFirst
convierte jane
en Jane
.