Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzo degli helper modello di messaggio
Con i modelli Amazon Pinpoint, i clienti possono creare modelli di messaggi riutilizzabili basati sul linguaggio Handlebars.js. Gli helper offrono una varietà di funzionalità come la formattazione di un prezzo nella valuta di una regione specifica o l'aggiunta di una località in base al fuso orario. Un helper può utilizzare una stringa o un numero intero specifico per il valore o una variabile di messaggio Amazon Pinpoint specifica.
Di seguito sono elencate le categorie di helper, descritte nelle sezioni seguenti.
Questa sezione descrive gli helper integrati forniti da Handlebars. Per l'elenco completo, consulta Built-in Helpers
-
each
: itera un elenco.Nota
La dimensione massima dell'elenco è di 15 elementi.
-
if
: valuta un'istruzione.
- each
-
Itera un elenco. Questo helper utilizza solo un blocco di istruzioni. Opzionalmente puoi:
-
Passare
@index
nella richiesta per fare riferimento all'indice del loop corrente. -
Usare l'helper
this
per fare riferimento all'elemento iterato corrente. -
Restituire la risposta dell'helper in un elenco mediante il tag
<li>
.
Utilizzo
{{#each
value
}}Il valore alla posizione
{{@index}}
è{{this}}
.{{else}}
La condizione è false.
{{/each}}
each
deve essere preceduto dal simbolo di sterlina (#
) e seguito dal simbolo di chiusura{{/each}}
nel blocco di istruzioni.Esempio
In questo esempio,
each
viene utilizzato per restituire l'elenco dei colori preferiti di un utente. Perfalse
, viene restituita un'istruzioneelse
. Se la richiesta è questa:{{#each User.UserAttributes.FavoriteColors}}
<li>{{this}}</li>
{{else}}
You have no favorite colors.
Valori restituiti da
{{/each}}
-
red
-
blue
-
yellow
per un'istruzione true.
-
- if
-
Valuta se un'istruzione è vera (true) e restituisce una risposta basata sulla valutazione.
Utilizzo
{{#if
value
}}Il valore non è indefinito
{{else}}
Il valore è indefinito
{{/if}}
if
deve essere preceduto dal simbolo di sterlina (#
) e seguito dal simbolo di chiusura{{/if}}
nel blocco di istruzioni.Esempio
In questo esempio, l'helper
if
viene utilizzato per valutare se si tratta del nome di un utente. Se viene trovato il nome, viene restituito un messaggio di saluto che riporta il nome dell'utente nella risposta. In caso contrario, l'istruzioneelse
restituisce un saluto alternativo.{{#if User.UserAttributes.FirstName.[0]}}
Hello
{{User.UserAttributes.FirstName.[0]}},
{{else}}
Hello,
{{/if}}
restituisce
Hello, Jane
se l'if
helper è vero.
Questa sezione descrive gli helper condizionali.
Gli helper condizionali possono essere usati su un'unica riga o in un blocco di istruzioni. È possibile personalizzare la risposta indipendentemente dal metodo helper utilizzato. È possibile passare helper condizionali aggiuntivi sia all'interno di istruzioni a riga singola che a blocchi di istruzioni. I seguenti helper condizionali mostrano l'utilizzo prima per una singola riga e poi per un blocco di istruzioni utilizzando una clausola else
facoltativa. Di seguito sono descritti gli helper condizionali:
-
and
— Verifica se tutti gli elementi passati sono uguali. -
eq
: verifica se due elementi sono uguali. -
gt
: verifica se un elemento è maggiore di un altro. -
gte
: verifica se un elemento è maggiore o uguale a un altro. -
if
— Valuta se qualcosa è vero. -
lt
: verifica se un elemento è inferiore a un altro. -
lte
: verifica se un elemento è minore o uguale a un altro. -
neq
: valuta se due elementi non sono uguali. -
not
— Inverte la risposta di un'operazione booleana. -
or
: confronta se alcuni degli elementi dell'argomento sono uguali.
- e
-
Confronta se tutti gli elementi passati in un argomento sono uguali e quindi restituisce la risposta in base al risultato. Questo helper può essere utilizzato per valori non booleani. È necessario passare almeno due elementi per la condizione.
Utilizzo
-
{{and
valuea
valueb
valuec
valued
yes='y
' no='n
'}}È possibile sostituire
y
en
con altri valori, ad esempioyes
andno
, o qualsiasi altra stringa che si desidera restituire, a seconda della condizione. -
{{#and
valuea
valueb
}}La condizione è true.
{{else}}
La condizione è false.
{{/and}}
and
deve essere preceduto dal simbolo di sterlina (#
) e seguito dal simbolo di chiusura{{/and}}
nel blocco di istruzioni.
Esempio
In questo esempio,
eq
viene utilizzato all'interno del blocco di istruzioniand
per determinare se entrambe le stringhe passate per gli attributiLocation.City
eLocation.Country
sono true. Se entrambe le condizioni sono uguali, viene restituita un'istruzione true. Se uno di questi attributi è false, viene restituita un'istruzioneelse
.{{#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
-
Verifica se due elementi sono uguali o se il valore di un elemento è uguale a una stringa passata.
Utilizzo
-
{{eq
valuea
valueb
yes='y
' no='n
'}}È possibile sostituire
y
en
con altri valori, ad esempioyes
andno
, o qualsiasi altra stringa che si desidera restituire, a seconda della condizione. -
{{#eq
valuea
valueb
}}La condizione è true.
{{else}}
La condizione è false.
{{/eq}}
eq
deve essere preceduto dal simbolo di sterlina (#
) e seguito dal simbolo di chiusura{{/eq}}
nel blocco di istruzioni.
Esempio
In questo esempio,
eq
viene utilizzato per valutare se il valore diUser.UserAttributes.FavoriteColors.[0]
èRed
. Se la risposta ètrue
, viene restituita un'istruzione true. Se la risposta èfalse
, viene restituita un'istruzioneelse
.{{#eq User.UserAttributes.FavoriteColors.[0] "
red
"}}Your favorite color is red.
{{else}}
You don't like red.
{{/eq}}
-
- gt
-
Verifica se il valore di un elemento è maggiore di un altro.
Utilizzo
-
{{gt
valuea
valueb
yes='y
' no='n
'}}È possibile sostituire
y
en
con altri valori, comeyes
andno
, o qualsiasi altra stringa che si desidera restituire, a seconda della condizione. -
{{#gt
valuea
valueb
}}La condizione è true.
{{else}}
La condizione è false.
{{/gt}}
gt
deve essere preceduto dal simbolo di sterlina (#
) e seguito dal simbolo di chiusura{{/gt}}
nel blocco di istruzioni.
Esempio
In questo esempio, l'helper confronta il valore dell'
User.UserAttributes.UserAge.[0]
attributo con una stringa17
, per verificare se l'età dell'utente è maggiore di 17 anni. Se la risposta ètrue
, viene restituita un'istruzione true. Se la risposta èfalse
, viene restituita un'istruzioneelse
.{{#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
-
Verifica se il valore di un elemento è maggiore o uguale a un altro.
Usage
-
{{gte
valuea
valueb
yes='y
' no='n
'}}È possibile sostituire
y
en
con altri valori, ad esempioyes
andno
, o qualsiasi altra stringa che si desidera restituire, a seconda della condizione. -
{{#gte
valuea
valueb
}}La condizione è true.
{{else}}
La condizione è false.
{{/gte}}
get
deve essere preceduto dal simbolo di sterlina (#
) e seguito dal simbolo di chiusura{{/gte}}
nel blocco di istruzioni.
Esempio
In questo esempio, l'helper confronta l'
User.UserAttributes.UserAge.[0]
attributo con una stringa18
, per verificare se l'età dell'utente è maggiore o uguale a 18 anni. Se la risposta ètrue
, viene restituita un'istruzione true. Se la risposta èfalse
, viene restituita un'istruzioneelse
.{{#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
-
Valuta se un'istruzione è vera (true) e restituisce una risposta basata sulla valutazione.
Utilizzo
-
{{#if
value
}}È possibile sostituire
y
en
con altri valori, ad esempioyes
andno
, o qualsiasi altra stringa che si desidera restituire, a seconda della condizione. -
{{#if
}}value
La condizione è true.
{{else}}
La condizione è false.
{{/if}}
if
deve essere preceduto dal simbolo di sterlina (#
) e seguito dal simbolo di chiusura{{/if}}
nel blocco di istruzioni.
Esempio
In questo esempio, l'helper viene utilizzato per valutare se si tratta del nome di un utente. Se viene trovato il nome, viene restituito un messaggio di saluto che riporta il nome dell'utente nella risposta. In caso contrario, l'istruzione else restituisce un saluto alternativo.
{{#if User.UserAttributes.FirstName.[0]}}
Hello
{{User.UserAttributes.FirstName.[0]}}
,
{{else}}
Hello,
{{/if}}
restituisce
Hello Jane,
se l'helper è vero. -
- lt
-
Verifica se il valore di un elemento è minore del valore di un altro.
Utilizzo
-
{{lt
valuea
valueb
yes='y
' no='n
'}}È possibile sostituire
y
en
con altri valori, ad esempioyes
andno
, o qualsiasi altra stringa che si desidera restituire, a seconda della condizione. -
{{#lt
valuea
valueb
}}La condizione è true.
{{else}}
La condizione è false.
{{/lt}}
lt
deve essere preceduto dal simbolo di sterlina (#
) e seguito dal simbolo di chiusura{{/lt}}
nel blocco di istruzioni.
Esempio
In questo esempio, l'helper confronta l'
User.UserAttributes.UserAge.[0]
attributo con una stringa18
, per verificare se l'età dell'utente è inferiore a 18 anni. Se la risposta ètrue
, viene restituita un'istruzione true. Se la risposta èfalse
, viene restituita un'istruzioneelse
.{{#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
-
Verifica se il valore di un elemento è minore o uguale a un altro.
Utilizzo
-
{{lte
valuea
valueb
yes='y
' no='n
'}}È possibile sostituire
y
en
con altri valori, ad esempioyes
andno
, o qualsiasi altra stringa che si desidera restituire, a seconda della condizione. -
{{#lte
valuea
valueb
}}La condizione è true.
{{else}}
La condizione è false.
{{/lte}}
lte
deve essere preceduto dal simbolo di sterlina (#
) e seguito dal simbolo di chiusura{{/lte}}
nel blocco di istruzioni.
Esempio
In questa istruzione di blocco, l'helper confronta l'
User.UserAttributes.UserAge.[0]
attributo con una stringa17
, per verificare se l'età dell'utente è pari o inferiore a 17 anni. Se la risposta ètrue
, viene restituita un'istruzione true. Se la risposta èfalse
, viene restituita un'istruzioneelse
.{{#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
-
Verifica se due elementi non sono uguali.
Utilizzo
-
{{neq
valuea
valueb
yes='y
' no='n
'}}È possibile sostituire
y
en
con altri valori, ad esempioyes
andno
, o qualsiasi altra stringa che si desidera restituire, a seconda della condizione. -
{{#neq
valuea
valueb
}}La condizione è true.
{{else}}
La condizione è false.
{{/neq}}
neq
deve essere preceduto dal simbolo di sterlina (#
) e seguito dal simbolo di chiusura{{/neq}}
nel blocco di istruzioni.
Esempio
In questa istruzione di blocco, l'
User.UserAttributes.FavoriteColors.[0]
attributo viene confrontato con una stringa
. Se la risposta èRed
true
, viene restituita un'istruzione true. Se la risposta èfalse
, viene restituita un'istruzioneelse
.{{#neq User.UserAttributes.Favorite.Colors.[0] "
red
"}}You do not like red.
{{else}}
You like red.
{{/neq}}
-
- not
-
Inverte la risposta di un'operazione booleana, in modo che se
not
è un confronto positivo, viene restituita un'istruzionetrue
. Se la risposta è false, viene restituita un'istruzione else.Utilizzo
-
{{not
value
yes='y
' no='n
'}}È possibile sostituire
y
en
con altri valori, ad esempioyes
andno
, o qualsiasi altra stringa che si desidera restituire, a seconda della condizione. -
{{#not
}}value
La condizione è true.
{{else}}
La condizione è false.
{{/not}}
not
deve essere preceduto dal simbolo di sterlina (#
) e seguito dal simbolo di chiusura{{/not}}
nel blocco di istruzioni.
Esempio
In questa istruzione di blocco, l'
User.UerAttributes.FavoriteColors.[0]
attributo viene confrontato con una stringared
utilizzando l'eq
helper. L'helpernot
restituisce quindi l'opposto dell'helpereq
. Se la risposta restituisce un colore diverso da quellored
, viene restituitatrue
un'istruzione. Se la risposta viene restituitared
, viene restituita un'else
istruzione che indica una dichiarazione falsa.{{#not (eq User.UserAttributes.Favorite.Colors.[0] "
red
")}}You do not like red.
{{else}}
You like red.
{{/not}}
Esempio
In questo esempio:
{{not (eq User.UserAttributes.FavoriteColors.[0] "
red
")}}restituisce falso se lo
User.UserAttributes.FavoriteColors.[0]
èred
. -
- oppure
-
Confronta se uno qualsiasi degli elementi dell'argomento è uguale e quindi restituisce una risposta in base al risultato. Questo helper può essere utilizzato per valori non booleani.
Utilizzo
-
{{or
valuea
valueb
valuec
valued
yes='y
' no='n
'}}È possibile sostituire
y
en
con altri valori, ad esempioyes
andno
, o qualsiasi altra stringa che si desidera restituire, a seconda della condizione. È necessario passare almeno due elementi per la condizione. -
{{#or
valuea
valueb
}}La condizione è true.
{{else}}
La condizione è false.
{{/or}}
or
deve essere preceduto dal simbolo di sterlina (#
) e seguito dal simbolo di chiusura{{/or}}
nel blocco di istruzioni.
Esempio
In questo blocco di istruzioni
or
, vengono confrontate due stringhe per l'attributoLocation.City
utilizzando l'helpereq
. Se uno degli attributi ètrue
, viene restituita un'istruzione true. Se una o più risposte sonofalse
, viene restituita un'istruzioneelse
.{{#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}}
-
Questa sezione descrive i seguenti helper stringa:
-
abbreviate
: tronca un valore. -
capitalize
: converte in maiuscolo ogni parola tra spazi. -
capitalizeFirst
: converte in maiuscolo il primo carattere di un valore. -
center
: centra un valore. -
cut
: taglia un valore. -
dateFormat
: imposta lo stile della data. -
inflect
: restituisce una stringa singolare o plurale in base al conteggio. -
join
: unisce un array, un iteratore o un oggetto iterabile. -
ljust
: giustifica un valore al margine sinistro. -
lower
: converte un valore in lettere minuscole. -
now
: stampa la data corrente. -
ordinalize
: ordina un valore numerico. -
replace
: sostituisce una stringa con un'altra. -
rjust
: giustifica un valore al margine destro. -
slugify
: converte un valore in minuscolo e rimuove i caratteri non verbali, converte gli spazi in trattini e rimuove gli spazi finali. -
stripTags
: elimina i tag [X]HTML da un valore. -
substring
: restituisce una nuova stringa come sottostringa di un valore passato. -
upper
: converte il valore passato in lettere maiuscole.
-
yesno
: sostituisce true, false e no con Yes, No e Maybe.
- abbreviate
-
Tronca un valore se supera il numero specificato. Gli spazi sono inclusi nel conteggio della lunghezza. Nella risposta vengono visualizzati i puntini di sospensione per indicare un valore troncato. I puntini di sospensione contano ai fini del valore troncato nella risposta. Questo tipo di helper è utile in presenza di una tabella di grandi dimensioni, ma di uno spazio minimo. Il troncamento dei valori in una cella fa sì che la tabella abbia un aspetto più uniforme.
Utilizzo
{{abbreviate
, sostituendovalue
X
}}X
con un valore numerico che indica il numero di caratteri da conservare. I numeri negativi non sono supportati.Esempio
In questo esempio,
abbreviate
viene utilizzato per troncareUser.UserAttributes.LastName.[0]
a sei (6) caratteri. La risposta include i puntini di sospensione, che vengono considerati ai fini del conteggio del totale di sei caratteri.Valori restituiti da
{{abbreviate
User.UserAttributes.LastName.[0]
6
}}Ale...
ifAlejandro
è il valore di.[0]
- capitalize
-
Converte in maiuscolo ogni parola tra spazi.
Utilizzo
{{capitalize
value
}}Esempio
In questo esempio, a ogni parola dell'istruzione
Attributes.description.[0]
viene applicata la maiuscola iniziale.{{capitalize
Attributes.description.[0]
}}Se
Attributes.description.[0]
restituisceMy First Post
, se il valore diAttributes.description.[0]
èmy first post
. - capitalizeFirst
-
Converte in maiuscolo il primo carattere di un valore.
Utilizzo
{{capitalizeFirst
value
}}Esempio
In questo esempio, la maiuscola viene applicata al primo carattere della prima parola dell'istruzione
Attributes.description.[0]
.Valori restituiti da
{{capitalizeFirst
Attributes.description.[0]
}}My first post
, se il valore di
èAttributes.description.[0]
my first post
.Esempio
- center
-
Centra il valore in un campo di una data larghezza per il numero specificato. Facoltativamente, puoi passare un carattere da visualizzare come carattere di riempimento o lasciare vuoto il campo. Se non viene passato alcun carattere, viene utilizzato uno spazio.
Utilizzo
{{center
, sostituendovalue
size=X
[pad=" "}}X
con un valore numerico.Se
pad
viene lasciato vuoto, nella risposta viene utilizzato uno spazio come carattere di riempimento. Se passi un carattere, il carattere specificato viene visualizzato in ogni spazio da riempire. I numeri negativi non sono supportati.Esempio
In questo esempio, il valore di
Location.City
è centrato con una dimensione di.19
Valori restituiti da
{{center
Location.City
size=19
}}" Los Angeles "
SeLocation.City
èLos Angeles
. Si noti che le virgolette visualizzate nell'output di esempio sono fornite solo per evidenziare il concetto trattato. - cut
-
Rimuove il valore specificato da una stringa.
Utilizzo
{{cut
, sostituendo lo spazio all'interno del parametro " " con il valore da tagliare. Se per il parametro non viene passato alcun valore, viene utilizzato uno spazio.value
[" "
]}}Esempio
Questo esempio rimuove la lettera
e
dall'Location.City
attributo.Valori restituiti da
{{cut
Location.City
"e
"}}Los Angls
se[Location.City
èLos Angeles
. - dateFormat
-
Imposta lo stile di data predefinito per la data in qualsiasi risposta. Per un elenco del fuso orario IDs, vederehttps://en.wikipedia.org/wiki/List_of_tz_database_time_zones
. Utilizzo
{{dateFormat date [inputFormat="format1"] [outputFormat="format2"] [tz=timeZoneId] [locale=localeID]}}
Il parametro
format
deve avere una delle seguenti impostazioni.-
"
full
": formato di data completo. Ad esempio:Tuesday, September 19, 2020
-
"
long
": formato di data esteso. Ad esempio:September 19, 2020
-
"
medium
": formato di data medio. Ad esempio:Sept 19, 2020
-
"
short
": formato di data breve. Ad esempio:9/19/20
-
"
pattern
": utilizza un formato di modello di data personalizzato. Per ulteriori informazioni sui modelli di data, consulta https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
"
locale
": utilizza un formato di data basato su una determinata impostazione locale. Per ulteriori informazioni sulle impostazioni locali, consulta https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/LocaleUtils.html#toLocale-java.lang.String-. Se un formato non viene passato, viene utilizzato
medium
per impostazione predefinita.Esempio
In questo esempio, la
[0]
voce per
èUser.UserAttributes.StartDate.[0]
09/19/2020
e viene inviato un messaggio a un utente utilizzando il formato dellafull
data basato sul fusoAmerica/Los_Angeles
orario.Valori restituiti da
We can meet with you any time on
{{dateFormat User.UserAttributes.StartDate.[0] inputFormat="MM/dd/yyyy" outputFormat="full" tz=America/Los_Angeles}}.
We can meet with you any time on Tuesday, September 19, 2020.
-
- inflect
-
Restituisce una stringa singolare o plurale in base al valore del conteggio.
Utilizzo
{{inflect
count
singular
plural
[includeCount=false]}}-
Immetti le forme singolare e plurale della stringa che desideri passare all'argomento.
-
Se
includeCount
è impostato sufalse
, nella risposta non viene restituito alcun conteggio. Se invece è impostato sutrue
,count
viene incluso nella risposta.
Esempio
Gli esempi seguenti mostrano l'inflessione dell'acquisto di mele, con e senza
includeCount
.Thank you for your purchase of {{inflect
restituisce:3
apple
apples
includeCount=false
}}.Thank you for your purchase of apples.
Se
includeCount
è impostato sutrue
, la risposta èThank you for your purchase of 3 apples.
-
- join
-
Unisce un array, un iteratore o un oggetto iterabile. La risposta restituisce un elenco, con ogni valore dell'elenco concatenato dal carattere passato in
join
. Ad esempio, è possibile separare i valori utilizzando una virgola (,
). Il valore di questo helper deve essere un elenco senza un indice di posizione dell'attributo, ad esempioAttributes.custom_attribute
.Utilizzo
{{join
value
" // " [prefix=""] [suffix=""]}}Esempio
In questo esempio, viene restituito un elenco di colori separati da una virgola e uno spazio (
", "
):Valori restituiti da
{{join
Attributes.favorite_colors
",
"}}blue, red, green
ifAttributes.favorite_colors
è l'elencoblue,red,green
. - ljust
-
Giustifica il valore al margine sinistro e aggiunge spazio a destra in modo che la lunghezza del valore corrisponda al numero. I numeri negativi non sono supportati.
Facoltativamente, puoi passare un carattere da visualizzare per
pad
o lasciare vuoto il campo. Se lasci vuoto il valorepad
, il valore predefinito è uno spazio.Utilizzo
{{ljust
, dovevalue
size=X
[pad=" "]}}X
è la lunghezza totale del valore, compreso lo spazio bianco.Esempio
In questo esempio, un valore di giustificazione sinistra di
15
viene applicato a Location.City.Valori restituiti da
{{ljust
Location.City
size=15
}}"Los Angeles "
se il valore di è.Location.City
Los Angeles
Si noti che le virgolette visualizzate nell'output di esempio sono fornite solo per evidenziare il concetto trattato. - lower
-
Converte un valore in formato tutto minuscolo.
Utilizzo
{{lower
value
}}Esempio
In questo esempio, la
[0]
voce forUser.UserAttributes.LastName.[0]
viene modificata in lettere minuscole.Valori restituiti da
{{lower
User.UserAttributes.LastName.[0]
}}santos
ifSantos
è il valore di[0]
. - ora
-
Stampa la data corrente in base all'ID del fuso orario passato. Per un elenco del fuso orario IDs, vederehttps://en.wikipedia.org/wiki/List_of_tz_database_time_zones
. Utilizzo
{{now [format="format"] [tz=timeZoneId] [locale=localeID]}}
Il parametro
format
deve avere una delle seguenti impostazioni.-
"
full
": formato di data completo. Ad esempio:Tuesday, September 19, 2020
-
"
long
": formato di data esteso. Ad esempio:September 19, 2020
-
"
medium
": formato di data medio. Ad esempio: 19 settembre 2020 -
"
short
": formato di data breve. Ad esempio, 19/9/20 -
"
pattern
": modello di data. Per ulteriori informazioni sui modelli di data, consulta https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
"
locale
": utilizza un formato di data basato su una determinata impostazione locale. Per ulteriori informazioni sulle impostazioni locali, consulta https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/LocaleUtils.html#toLocale-java.lang.String-. Se un formato non viene passato, viene utilizzato
medium
per impostazione predefinita.Esempio
In questo esempio, la data corrente di Los Angeles viene restituita con nel formato
medium
.Valori restituiti da
{{now "medium" tz=
America/Los_Angeles
}}Sept 19, 2020
. -
- ordinalize
-
Converte in ordinale il valore numerico passato nell'argomento. Ad esempio,
1
è ordinalizzato come1st
e2
come2nd
. Sono supportati solo valori numerici.Utilizzo
{{ordinalize [
number
]}}Esempio
In questo esempio, la voce
[0]
diUser.UserAttributes.UserAge
viene convertita in ordinale e restituita assieme a un messaggio.Congratulations on your {{ordinalize User.UserAttributes.UserAge.[0]}} birthday!
restituisce22
ordinalizzato come.22nd
Congratulations on your 22nd birthday!
- replace
-
Sostituisce una stringa con un'altra. Una stringa o un valore numerico deve essere letterale. I caratteri jolly non sono supportati.
Utilizzo
{{replace
stringToReplace
replacementValue
}}Esempio
In questo esempio, un carattere di sottolineatura (_) sostituisce uno spazio.
Valori restituiti da
{{replace
Location.City
" " "_"
}}Los_Angeles
se loLocation.City
èLos Angeles
. - rjust
-
Giustifica il valore al margine destro e aggiunge spazio a sinistra in modo che la lunghezza del valore corrisponda al numero. I numeri negativi non sono supportati.
Facoltativamente, puoi passare un carattere da visualizzare per
pad
o lasciare vuoto il campo. Se lasci vuoto il valorepad
, il valore predefinito è uno spazio.Utilizzo
{{rjust
, dovevalue
size=X
[pad=" "]}}X
è la lunghezza totale del valore, compreso lo spazio bianco.Esempio
In questo esempio, all'
Location.City
attributo15
viene applicato un valore di giustificazione corretto di.Valori restituiti da
{{rjust
Location.City
size=15
}}" Los Angeles"
. se loLocation.City
èLos Angeles
. Si noti che le virgolette visualizzate nell'output sono fornite solo per evidenziare il concetto trattato. - slugify
-
Converte il valore passato in minuscolo, rimuove i caratteri non letterali (alfanumerici e trattini bassi), converte gli spazi in trattini e rimuove gli spazi iniziali o finali.
Utilizzo
{{slugify
value
}}Esempio
In questo esempio, viene eseguito slugify per l'attributo
Location.City
.Valori restituiti da
{{slugify
Location.City
}}los-angeles
se loLocation.City
èLos Angeles
. - stripTags
-
Elimina i tag [X]HTML da un valore.
Utilizzo
{{stripTags
value
}}Esempio
In questo esempio, i tag HTML per l'utente. UserAttributes.interest. [0] vengono rimossi.
Valori restituiti da
{{stripTags
User.UserAttributes.interests.[0]
}}Art
, se loUser.UserAttributes.interests.[0]
è<h1>Art</h1>
. - substring
-
Restituisce una nuova stringa come sottostringa del valore passato. La lunghezza e la posizione sono determinate dai parametri
startOffset
eendOffset
, che devono essere numeri interi. I numeri negativi non sono supportati. SeendOffset
viene passato, la sottostringa utilizza il valore finale originale della stringa.Utilizzo
{{substring
value
startOffset
[endOffset]
}}Esempio
In questo esempio, all'attributo Location.City vengono applicati offset impostato su 4 e endOffset impostato su 9.
{{substring
restituisceLocation.City 4 9
}}
se Los Angeles è il nostroAngel
Location.City
valoreLos Angeles
. - upper
-
Converte il valore passato in lettere maiuscole.
Utilizzo
{{upper
value
}}Esempio
In questo esempio, la voce
[0]
relativa all'attributoUser.UserAttributes.LastName
viene convertita interamente in lettere maiuscole.{{upper User.UserAttributes.LastName.[0]}}
restituisceROE
se ilUser.UserAttributes.LastName.[0]
valore èRoe
. - yesno
-
Sostituisce
true
,false
eNULL
conYes
,No
eMaybe
.Utilizzo
{{yesno value [yes="yes"] [no="no"] maybe=["maybe"]}}
Esempio
In questo esempio, l'attributo
IsUserSubscribed
restituisce un valore indicante se un utente è iscritto a un elenco particolare.Valori restituiti da
{{yesno Attributes.IsUserSubscribed}}
yes
seAttributes.IsUserSubscribed
ètrue
.
Questa sezione descrive gli helper matematici e di codifica.
-
add
: restituisce la somma di due numeri. -
ceiling
: arrotonda un numero intero al relativo limite matematico superiore. -
decode64
— Decodifica un valore codificato in base64 in una stringa. -
divide
: restituisce il quoziente di due numeri. -
encode64
— Codifica una stringa utilizzando base64. -
floor
: arrotonda un numero intero al relativo limite matematico inferiore. -
md5
— Esegue l'hash di una stringa passata utilizzando l'algoritmo. MD5 -
modulo
— Restituisce il resto di due numeri utilizzando la virgola mobile. -
multiply
: restituisce il prodotto di due numeri. -
round
: arrotonda un decimale al numero intero più vicino. -
sha256
: esegue l'hash di una stringa passata utilizzando SHA-256. -
sha512
: esegue l'hash di una stringa passata utilizzando SHA-512. -
subtract
: restituisce la differenza tra due numeri. -
uuid
: genera casualmente un UUID in un formato a 128 bit.
- aggiungi
-
Restituisce la somma di due numeri assieme alle virgole mobili.
Utilizzo
{{add
arg1
arg2
}}Esempio
{{add
restituisce5 2.3
}}7.3
- ceiling
-
Arrotonda un numero intero al relativo limite matematico superiore, che è il numero intero più alto più vicino al valore passato.
Utilizzo
{{ceiling
value
}}Esempio
Valori restituiti da
{{ceiling
5.23
}}6
- decode64
-
Decodifica un valore codificato in base64 in una stringa.
Utilizzo
{{decode64 "
string
"}}Esempio
Valori restituiti da
{{decode64 "
SGVsbG8gd29ybGQ
="}}Hello World
- divide
-
Restituisce il quoziente di due numeri, incluse le virgole mobili.
Utilizzo
{{divide
arg1
arg2
}}Esempio
Valori restituiti da
{{divide
5 2.3
}}2.17391304
- encode64
-
Codifica la stringa passata nell'argomento utilizzando base64.
Utilizzo
{{encode64 "
string
"}}Esempio
{{encode64 "
Hello World"
}}SGVsbG8gd29ybGQ=
- floor
-
Arrotonda un numero intero al relativo limite matematico inferiore, che è il numero intero più basso più vicino al valore passato.
Utilizzo
{{floor
value
}}Esempio
Valori restituiti da
{{floor
5.23
}}5
- md5
-
Esegue l'hash di una stringa passata utilizzando l'algoritmo. MD5
Utilizzo
{{md5 "
string
"}}Esempio
{{md5 "
Hello World
"}}3e25960a79dbc69b674cd4ec67a72c62
- modulo
-
Restituisce il resto di due numeri utilizzando virgola mobile.
Utilizzo
{{modulo
arg1
arg2
}}Esempio
Valori restituiti da
{{modulo
7 2
}}1
- multiply
-
Restituisce il prodotto di due numeri, con qualsiasi virgola mobile.
Utilizzo
{{multiply
arg1
arg2
}}Esempio
Valori restituiti da
{{multiply
5 2.3
}}11.5
- round
-
Arrotonda una cifra decimale per eccesso o per difetto al numero intero più vicino.
Utilizzo
{{round
value
}}Esempio
You spent an average of {{round
restituisce:19.21
}} minutes on our website each day.You spent an average of 19 minutes on our website each day.
- sha256
-
Esegue l'hash di una stringa passata utilizzando la sicurezza crittografica SHA-256.
Utilizzo
{{sha256 "
string
"}}Esempio
Valori restituiti da
{{sha256 "
Hello World
"}}a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e
- sha512
-
Esegue l'hash di una stringa passata utilizzando la sicurezza crittografica SHA-512.
Utilizzo
{{sha512 "
string
"}}Esempio
Valori restituiti da
{{sha512 "
Hello World
"}}2c74fd17edafd80e8447b0d46741ee243b7eb74dd2149a0ab1b9246fb30382f27e853d8585719e0e67cbda0daa8f51671064615d645ae27acb15bfb1447f459b
- subtract
-
Restituisce la differenza di due numeri, con qualsiasi virgola mobile.
Utilizzo
{{subtract
arg1
arg2
}}Esempio
Valori restituiti da
{{subtract
5 2.3
}}2.7
- uuid
-
Genera casualmente un UUID in un formato standard a 128 bit. Non è necessario passare valori nell'argomento.
Utilizzo
{{uuid}}
Esempio
Valori restituiti da
{{uuid}}
95f36680-152c-4052-99ec-cc3cdf7ca594
Sebbene tecnicamente non siano un aiuto, gli inline partials sono un modo di Handlebars per semplificare i modelli che includono stringhe ripetute, il che è meglio riutilizzarli. Per ulteriori informazioni, consulta Inline partials all'indirizzo handlebarsjs.com.
Utilizzo
{{#* inline "inlineName"}}Content to reuse{{/inline}}
Per fare riferimento al contenuto del parziale inline in una posizione diversa, usa:
{{> inlineName}}
Esempio
L'esempio seguente crea un parziale in linea che include il nome del destinatario e, se disponibile, il cognome, aggiungendo il codice seguente all'inizio del modello:
{{#* inline "
fullName
"}}
{{User.UserAttributes.FirstName.[0]}} {{#if
User.UserAttributes.LastName.[0]}} {{User.UserAttributes.LastName.[0]}} {{/if}}
{{/inline}}
Una volta creato il parziale fullName
, puoi includerlo in qualsiasi punto del modello anteponendo al nome del parziale il segno "maggiore di" (>
) seguito da uno spazio, come nell'esempio seguente: {{>
fullName}}
.
Hello {{> fullName}}
restituisce il nome e il cognome dell'utente se vero, Hello
Jane Doe
ad esempio. Altrimenti, se non viene trovato alcun cognome, Hello
Jane
viene restituito.
I manubri includono funzionalità aggiuntive oltre a quelle qui documentate. Per ulteriori informazioni, consulta handlebarsjs.com
Utilizzo di variabili con gli helper modello di messaggio
Gli attributi personalizzati di Amazon Pinpoint, ad esempio User.UserAttributes.LastName
, vengono archiviati come elenco, indipendentemente dal fatto che si tratti di una singola voce o di più voci. Quando passi un elenco a un helper che prevede una stringa, devi specificare il valore dell'indice dell'attributo insieme al nome dell'attributo. Questo valore dell'indice dell'attributo indica la posizione di un valore rispetto all'elenco di attributi: .[0]
per la prima voce nell'elenco, .[1]
per la seconda, .[2]
per la terza e così via. Ad esempio, si supponga che tu stia usando l'helper upper
per convertire la prima voce ([0]
) di User.UserAttributes.LastName
nel formato tutto maiuscolo. L'utilizzo dell'helper è {{upper
e l'attributo è formattato come value
}}User.UserAttributes.LastName
. Sostituisci value
con il nome dell'attributo e il valore dell'indice dell'attributo
come segue:. .[0]
{{upper
User.UserAttributes.LastName.[0]}}
La risposta restituisce quindi la voce [0]
dall'elenco, nel formato tutto maiuscolo. Per esempio, se il valore di [0]
èSantos
, la risposta restituisceSANTOS
.
I nomi degli attributi personalizzati di Amazon Pinpoint supportano gli spazi. Per fare in modo che venga chiamato un attributo personalizzato"Last Name"
, è necessario formattare l'attributo comeUser.UserAttributes.[Last Name]
. Per accedere alla prima voce nell'elenco degli indici degli attributi, il formato èUser.UserAttributes.[Last
Name].[0]
.
Il nome di un attributo personalizzato può contenere fino a 50 caratteri. Un valore di attributo può contenere fino a 100 caratteri. Quando definisci il nome di un attributo personalizzato, evita di utilizzare i seguenti caratteri: cancelletto (#), due punti (:), punto interrogativo (?), barra rovesciata (\) e barra (/). La console Amazon Pinpoint non è in grado di visualizzare i nomi degli attributi contenente questi caratteri. Questa restrizione non si applica ai valori degli attributi.
Utilizzo di helper annidati
Puoi annidare più helper modello di messaggi l'uno nell'altro. L'esempio seguente mostra come formattare due helper: {{ first helper (second helper)}}
. Il secondo helper viene elaborato per primo, seguito dal primo helper. Ricorda che è il primo helper a determinare sempre l'output. Gli helper successivi devono essere annidati all'interno dell'helper precedente nel seguente modo: {{ first helper (second helper (third helper)
)}}
L'esempio seguente mostra come annidare due helper per modificare JANE
in Jane
: {{capitalizeFirst
(lower "
. JANE
")}}lower
converte innanzitutto JANE
in jane
. Quindi capitalizeFirst
converte jane
in Jane
.