Helferobjekte für Nachrichtenvorlagen verwenden - Amazon Pinpoint

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Helferobjekte für Nachrichtenvorlagen verwenden

Mit Pinpoint-Vorlagen können Kunden wiederverwendbare Nachrichtenvorlagen erstellen, die auf der Sprache Handlebars.js basieren. Helferobjekte bietet eine Vielzahl von Features, z. B. die Formatierung eines Preises in der Währung einer bestimmten Region oder das Hinzufügen eines Standorts, der auf einer Zeitzone basiert. Ein Helferobjekt kann eine bestimmte Zeichenfolge oder Ganzzahl für den Wert oder eine bestimmte Amazon-Pinpoint-Nachrichtenvariable verwenden.

Dies sind die Kategorien von Helferobjekten, die in den folgenden Abschnitten beschrieben werden:

In diesem Abschnitt werden die integrierten Helferobjekte beschrieben, die von Handlebars bereitgestellt werden. Die vollständige Liste finden Sie unter Built-in Helpers auf handlebarsjs.com. Dies sind die integrierten Helferobjekte:

  • each: Iteriert eine Liste.

    Anmerkung

    Die maximale Listengröße beträgt 15 Elemente.

  • if: Wertet eine Aussage aus.

each

Iteriert eine Liste. Dieses Helferobjekt verwendet nur eine Blockanweisung. Sie können optional

  • @index in die Anforderung übergeben, um auf den aktuellen Loop-Index zu verweisen.

  • Verwenden Sie das this-Helferobjekt, um auf das aktuelle Element zu verweisen, das gerade iteriert wird.

  • Gibt die Antwort des Helferobjekts mithilfe des <li>-Tags in einer Liste zurück.

Usage

{{#each value}}

Der Wert an der Position {{@index}} ist {{this}}.

{{else}}

Zustand ist „false“.

{{/each}}

each muss ein Pfundzeichen (#) vorangestellt werden und muss mit einem schließenden {{/each}} in der Blockanweisung enden.

Beispiel

In diesem Beispiel wird each verwendet, um eine Liste der Lieblingsfarben eines Benutzers zurückzugeben. Für ein false wird eine else-Anweisung zurückgegeben. Wenn die Anfrage

{{#each User.UserAttributes.FavoriteColors}}

<li>{{this}}</li>

{{else}}

Sie haben keine Lieblingsfarben.

{{/each}} gibt Folgendes zurück

  • red

  • Blau

  • Gelb

für eine „true“-Aussage lautet.

if

Prüft, ob etwas wahr ist, und gibt auf der Grundlage der Bewertung eine Antwort zurück.

Usage

{{#if value}}

Der Wert ist nicht undefiniert

{{else}}

Der Wert ist nicht undefiniert

{{/if}}

if muss ein Pfundzeichen (#) vorangestellt werden und muss mit einem schließenden {{/if}} in der Blockanweisung enden.

Beispiel

In diesem Beispiel wird das if-Helferobjekt verwendet, um auszuwerten, ob es der Vorname eines Benutzers ist. Wenn der Name gefunden wird, wird eine Begrüßung zurückgegeben, die den Vornamen des Benutzers in der Antwort enthält. Andernfalls gibt die else-Anweisung eine alternative Begrüßung zurück.

{{#if User.UserAttributes.FirstName.[0]}}

Hello {{User.UserAttributes.FirstName.[0]}},

{{else}}

Hallo,

{{/if}}

gibt Hallo, Jane zurück, wenn das if-Helperobjekt wahr ist.

In diesem Abschnitt werden die bedingten Helferobjekte beschrieben.

Bedingte Helferobjekte können entweder in einer einzelnen Zeile oder in einer Blockanweisung verwendet werden. Sie können die Antwort unabhängig davon anpassen, welche Hilfsmethode Sie verwenden. Sie können zusätzliche bedingte Helferobjekte sowohl in einzeiligen als auch in Blockanweisungen übergeben. Die folgenden bedingten Helferobjekte zeigen die Verwendung zuerst für eine einzelne Zeile und dann für eine Blockanweisung mit einer optionalen else-Klausel. Dies sind die bedingten Helferobjekte:

  • and: Vergleicht, ob alle übergebenen Elemente gleich sind oder nicht.

  • eq: Prüft, ob zwei Elemente gleich sind.

  • gt: Prüft, ob ein Element größer als ein anderes ist.

  • gte: Prüft, ob ein Element größer als oder gleich ein anderes ist.

  • if: Prüft, ob etwas wahr ist.

  • lt: Prüft, ob ein Element kleiner als ein anderes ist.

  • lte: Prüft, ob ein Element kleiner als oder gleich ein anderes ist.

  • neq: Prüft, ob zwei Elemente nicht gleich sind.

  • not – Kehrt die Antwort einer booleschen Operation um.

  • or: Vergleicht, ob eines der Elemente im Argument gleich ist.

and

Vergleicht, ob alle in einem Argument übergebenen Elemente gleich sind, und gibt dann die Antwort auf der Grundlage des Ergebnisses zurück. Dieses Helferobjekt kann für nichtboolesche Werte verwendet werden. Sie müssen mindestens zwei Elemente für die Bedingung übergeben.

Usage

  • {{and valuea valueb valuec valued yes='y' no='n'}}

    Sie können j und n je nach Bedingung durch andere Werte wie Ja und Nein oder durch eine beliebige andere Zeichenfolge ersetzen, die Sie zurückgeben möchten.

  • {{#and valuea valueb}}

    Die Bedingung ist „true“.

    {{else}}

    Die Bedingung ist „false“.

    {{/and}}

    and muss ein Pfundzeichen (#) vorangestellt werden und muss mit einem schließenden {{/and}} in der Blockanweisung enden.

Beispiel

In diesem Beispiel wird eq innerhalb der and-Block-Anweisung verwendet, um festzustellen, ob beide für die Attribute Location.City und Location.Country übergebenen Zeichenfolgen wahr sind. Wenn beide Bedingungen gleich sind, wird eine „true“-Anweisung zurückgegeben. Wenn eines dieser Attribute falsch ist, wird eine else-Aussage zurückgegeben.

{{#and (eq Location.City "Los Angeles") (eq Location.Country "US")}}

Sie leben in Los Angeles und den USA.

{{else}}

Sie leben in Los Angeles und den USA.

{{/and}}

eq

Testet, ob zwei Elemente gleich sind oder ob der Wert eines Elements einer übergebenen Zeichenfolge entspricht.

Usage

  • {{eq valuea valueb yes='y' no='n'}}

    Sie können j und n je nach Bedingung durch andere Werte wie Ja und Nein oder durch eine beliebige andere Zeichenfolge ersetzen, die Sie zurückgeben möchten.

  • {{#eq valuea valueb}}

    Die Bedingung ist „true“.

    {{else}}

    Die Bedingung ist „false“.

    {{/eq}}

    eq muss ein Pfundzeichen (#) vorangestellt werden und muss mit einem schließenden {{/eq}} in der Blockanweisung enden.

Beispiel

In diesem Beispiel wird eq verwendet, um auszuwerten, ob der Wert von User.UserAttributes.FavoriteColors.[0] Rot ist. Wenn die Antwort true lautet, wird eine „true“-Aussage zurückgegeben. Wenn die Antwort false lautet, wird eine else-Aussage zurückgegeben.

{{#eq User.UserAttributes.FavoriteColors.[0] "red"}}

Ihre Lieblingsfarbe ist Rot.

{{else}}

Sie mögen Rot nicht.

{{/eq}}

gt

Prüft, ob der Wert eines Elements größer als ein anderer ist.

Usage

  • {{gt valuea valueb yes='y' no='n'}}

    Sie können j und n je nach Bedingung durch andere Werte wie Ja und Nein oder durch eine beliebige andere Zeichenfolge ersetzen, die Sie zurückgeben möchten.

  • {{#gt valuea valueb}}

    Die Bedingung ist „true“.

    {{else}}

    Die Bedingung ist „false“.

    {{/gt}}

    gt muss ein Pfundzeichen (#) vorangestellt werden und muss mit einem schließenden {{/gt}} in der Blockanweisung enden.

Beispiel

In diesem Beispiel vergleicht das Helferobjekt den Wert des User.UserAttributes.UserAge.[0]-Attributs mit der Zeichenfolge 17, um zu überprüfen, ob das Alter des Benutzers älter als 17 ist. Wenn die Antwort true lautet, wird eine „true“-Aussage zurückgegeben. Wenn die Antwort false lautet, wird eine else-Aussage zurückgegeben.

{{#gt User.UserAttributes.UserAge.[0] "17"}}

Sie sind alt genug, um ein Auto zu mieten.

{{else}}

Sie sind nicht alt genug, um ein Auto zu mieten.

{{/gt}}

gte

Prüft, ob der Wert eines Elements größer als oder gleich ein anderer ist.

Usage

  • {{gte valuea valueb yes='y' no='n'}}

    Sie können j und n je nach Bedingung durch andere Werte wie Ja und Nein oder durch eine beliebige andere Zeichenfolge ersetzen, die Sie zurückgeben möchten.

  • {{#gte valuea valueb}}

    Die Bedingung ist „true“.

    {{else}}

    Die Bedingung ist „false“.

    {{/gte}}

    get muss ein Pfundzeichen (#) vorangestellt werden und muss mit einem schließenden {{/gte}} in der Blockanweisung enden.

Beispiel

In diesem Beispiel vergleicht das Helferobjekt das User.UserAttributes.UserAge.[0]-Attribut mit der Zeichenfolge 18, um zu überprüfen, ob das Alter des Benutzers 18 oder älter ist. Wenn die Antwort true lautet, wird eine „true“-Aussage zurückgegeben. Wenn die Antwort false lautet, wird eine else-Aussage zurückgegeben.

{{#gte User.UserAttributes.UserAge.[0] "18"}}

Sie sind alt genug, um ein Auto zu mieten.

{{else}}

Sie sind nicht alt genug, um ein Auto zu mieten.

{{/gte}}

if

Prüft, ob etwas wahr ist, und gibt auf der Grundlage der Bewertung eine Antwort zurück.

Usage

  • {{#if value}}

    Sie können j und n je nach Bedingung durch andere Werte wie Ja und Nein oder durch eine beliebige andere Zeichenfolge ersetzen, die Sie zurückgeben möchten.

  • {{#if value}}

    Die Bedingung ist „true“.

    {{else}}

    Die Bedingung ist „false“.

    {{/if}}

    if muss ein Pfundzeichen (#) vorangestellt werden und muss mit einem schließenden {{/if}} in der Blockanweisung enden.

Beispiel

In diesem Beispiel wird das if-Helferobjekt verwendet, um auszuwerten, ob es der Vorname eines Benutzers ist. Wenn der Name gefunden wird, wird eine Begrüßung zurückgegeben, die den Vornamen des Benutzers in der Antwort enthält. Andernfalls gibt die „else“-Anweisung eine alternative Begrüßung zurück.

{{#if User.UserAttributes.FirstName.[0]}}

Hallo {{User.UserAttributes.FirstName.[0]}},

{{else}}

Hallo,

{{/if}}

gibt Hallo Jane, zurück, wenn das if-Helperobjekt wahr ist.

lt

Prüft, ob der Wert eines Elements kleiner als der Wert eines anderen ist.

Usage

  • {{lt valuea valueb yes='y' no='n'}}

    Sie können j und n je nach Bedingung durch andere Werte wie Ja und Nein oder durch eine beliebige andere Zeichenfolge ersetzen, die Sie zurückgeben möchten.

  • {{#lt valuea valueb}}

    Die Bedingung ist „true“.

    {{else}}

    Die Bedingung ist „false“.

    {{/lt}}

    lt muss ein Pfundzeichen (#) vorangestellt werden und muss mit einem schließenden {{/lt}} in der Blockanweisung enden.

Beispiel

In diesem Beispiel vergleicht das Helferobjekt das User.UserAttributes.UserAge.[0]-Attribut mit der Zeichenfolge 18, um zu überprüfen, ob das Alter des Benutzers jünger als 18 ist. Wenn die Antwort true lautet, wird eine „true“-Aussage zurückgegeben. Wenn die Antwort false lautet, wird eine else-Aussage zurückgegeben.

{{#lt User.UserAttributes.UserAge.[0] "18"}}

Sie sind nicht alt genug, um ein Auto zu mieten.

{{else}}

Sie sind alt genug, um ein Auto zu mieten.

{{/lt}}

lte

Prüft, ob der Wert eines Elements kleiner als oder gleich ein anderer ist.

Usage

  • {{lte valuea valueb yes='y' no='n'}}

    Sie können j und n je nach Bedingung durch andere Werte wie Ja und Nein oder durch eine beliebige andere Zeichenfolge ersetzen, die Sie zurückgeben möchten.

  • {{#lte valuea valueb}}

    Die Bedingung ist „true“.

    {{else}}

    Die Bedingung ist „false“.

    {{/lte}}

    lte muss ein Pfundzeichen (#) vorangestellt werden und muss mit einem schließenden {{/lte}} in der Blockanweisung enden.

Beispiel

In dieser Blockanweisung vergleicht das Helferobjekt das User.UserAttributes.UserAge.[0]-Attribut mit der Zeichenfolge 17, um zu überprüfen, ob das Alter des Benutzers 17 oder jünger ist. Wenn die Antwort true lautet, wird eine „true“-Aussage zurückgegeben. Wenn die Antwort false lautet, wird eine else-Aussage zurückgegeben.

{{#lte User.UserAttributes.Age.[0] "17"}}

Sie sind nicht alt genug, um ein Auto zu mieten.

{{else}}

Sie sind alt genug, um ein Auto zu mieten.

{{/lte}}

neq

Prüft, ob zwei Elemente nicht gleich sind.

Usage

  • {{neq valuea valueb yes='y' no='n'}}

    Sie können j und n je nach Bedingung durch andere Werte wie Ja und Nein oder durch eine beliebige andere Zeichenfolge ersetzen, die Sie zurückgeben möchten.

  • {{#neq valuea valueb}}

    Die Bedingung ist „true“.

    {{else}}

    Die Bedingung ist „false“.

    {{/neq}}

    neq muss ein Pfundzeichen (#) vorangestellt werden und muss mit einem schließenden {{/neq}} in der Blockanweisung enden.

Beispiel

In dieser Blockanweisung wird das User.UserAttributes.FavoriteColors.[0]-Attribut anhand einer Zeichenfolge, Red, geprüft. Wenn die Antwort true lautet, wird eine „true“-Aussage zurückgegeben. Wenn die Antwort false lautet, wird eine else-Aussage zurückgegeben.

{{#neq User.UserAttributes.Favorite.Colors.[0] "red"}}

Sie mögen Rot nicht.

{{else}}

Sie mögen Rot.

{{/neq}}

not

Kehrt die Antwort einer booleschen Operation um, sodass eine true-Aussage zurückgegeben wird, wenn not ein positiver Vergleich ist. Wenn die Antwort „false“ lautet, wird eine „each“-Aussage zurückgegeben.

Usage

  • {{not value yes='y' no='n'}}

    Sie können j und n je nach Bedingung durch andere Werte wie Ja und Nein oder durch eine beliebige andere Zeichenfolge ersetzen, die Sie zurückgeben möchten.

  • {{#not value}}

    Die Bedingung ist „true“.

    {{else}}

    Die Bedingung ist „false“.

    {{/not}}

    not muss ein Pfundzeichen (#) vorangestellt werden und muss mit einem schließenden {{/not}} in der Blockanweisung enden.

Beispiel

In dieser Blockanweisung wird das User.UerAttributes.FavoriteColors.[0]-Attribut anhand einer Zeichenfolge, Rot, mithilfe des eq-Helferobjekts geprüft. Das not-Helferobjekt gibt dann das Gegenteil des eq-Helferobjekt zurück. Wenn die Antwort eine andere Farbe als Rot zurückgibt, wird eine true-Anweisung zurückgegeben. Wenn die Antwort Rot zurückgibt, wird eine else-Aussage zurückgegeben, die auf eine falsche Aussage hinweist.

{{#not (eq User.UserAttributes.Favorite.Colors.[0] "red")}}

Sie mögen Rot nicht.

{{else}}

Sie mögen Rot.

{{/not}}

Beispiel

In diesem Beispiel:

{{not (eq User.UserAttributes.FavoriteColors.[0] "red")}}

gibt „false“ zurück, wenn User.UserAttributes.FavoriteColors.[0] Rot ist.

or

Vergleicht, ob beliebige in einem Argument übergebenen Elemente gleich sind, und gibt dann eine Antwort auf der Grundlage des Ergebnisses zurück. Dieses Helferobjekt kann für nichtboolesche Werte verwendet werden.

Usage

  • {{or valuea valueb valuec valued yes='y' no='n'}}

    Sie können j und n je nach Bedingung durch andere Werte wie Ja und Nein oder durch eine beliebige andere Zeichenfolge ersetzen, die Sie zurückgeben möchten. Sie müssen mindestens zwei Elemente für die Bedingung übergeben.

  • {{#or valuea valueb}}

    Die Bedingung ist „true“.

    {{else}}

    Die Bedingung ist „false“.

    {{/or}}

    or muss ein Pfundzeichen (#) vorangestellt werden und muss mit einem schließenden {{/or}} in der Blockanweisung enden.

Beispiel

In dieser or-Blockanweisung werden zwei Zeichenketten für das Location.City-Attribut zusätzlich mithilfe des eq-Helferobjekts verglichen. Wenn eines dieser Attribute true lautet, wird eine „true“-Aussage zurückgegeben. Wenn eine oder mehrere Antworten false lauten, wird eine else-Aussage zurückgegeben.

{{#or (eq Location.City "Los Angeles") (eq Location.City "Seattle")}}

Sie leben an der Westküste der Vereinigten Staaten.

{{else}}

Sie leben an der Westküste der Vereinigten Staaten.

{{/or}}

In diesem Abschnitt werden die folgenden Zeichenfolgen-Helferobjekte beschrieben:

  • abbreviate: Kürzt einen Wert.

  • capitalize: Schreibt jedes Wort zwischen Leerzeichen groß.

  • capitalizeFirst: Schreibt das erste Zeichen eines Werts groß.

  • center: Zentriert einen Wert.

  • cut: Schneidet einen Wert aus.

  • dateFormat: Legt den Datumsstil fest.

  • inflect: Gibt eine Zeichenfolge im Singular oder Plural zurück, die auf der Anzahl basiert.

  • join: Verbindet ein Array, einen Iterator oder ein iterierbares Objekt.

  • ljust: Richtet einen Wert am linken Rand aus.

  • lower: Konvertiert einen Wert in Kleinbuchstaben.

  • now: Druckt das aktuelle Datum.

  • ordinalize: Ordinalisiert einen numerischen Wert.

  • replace: Ersetzt eine Zeichenfolge durch eine andere.

  • rjust: Richtet einen Wert am rechten Rand aus.

  • slugify: Konvertiert einen Wert in Kleinbuchstaben und entfernt Zeichen, die kein Wort sind, wandelt Leerzeichen in Bindestriche um und entfernt nachfolgende Leerzeichen.

  • stripTags: Entfernt [X]HTML-Tags von einem Wert.

  • substring: Gibt eine neue Zeichenfolge als Teilzeichenfolge eines übergebenen Werts zurück.

  • upper: Konvertiert den übergebenen Wert in Großbuchstaben.

  • yesno: Ersetzt wahr, falsch und nein durch Ja, Nein und Vielleicht.

abbreviate

Kürzt einen Wert, wenn dieser die angegebene Zahl überschreitet. Leerzeichen sind in der Längenzählung enthalten. In der Antwort wird eine Ellipse angezeigt, die auf einen gekürzten Wert hinweist. Die Ellipse wird auf den gekürzten Wert in der Antwort angerechnet. Diese Art von Helferobjekt ist nützlich, wenn Sie eine große Tabelle und wenig Platz haben. Durch das Kürzen von Werten in einer Zelle können Sie der Tabelle ein einheitlicheres Aussehen verleihen.

Usage

{{abbreviate value X}}, wobei X durch einen numerischen Wert ersetzt wird, der die Anzahl der beizubehaltenden Zeichen angibt. Negative Zahlen werden nicht unterstützt.

Beispiel

In diesem Beispiel wird abbreviate verwendet, um User.UserAttributes.LastName.[0] auf sechs (6) Zeichen zu kürzen. Die Antwort enthält eine Ellipse, deren Punkte auf die Summe von sechs Zeichen angerechnet werden.

{{abbreviate User.UserAttributes.LastName.[0] 6}} gibt Folgendes zurück

Ale... wenn Alejandro der Wert von [0] ist.

capitalize

Schreibt jedes Wort zwischen Leerzeichen groß.

Usage

{{capitalize value}}

Beispiel

In diesem Beispiel wird jedem Wort für den Attributes.description.[0]-Eintrag die Großschreibung am Anfang zugewiesen.

{{capitalize Attributes.description.[0]}}

Wenn Attributes.description.[0] zurückgegeben wird

Mein erster Beitrag, wenn der Wert von Attributes.description.[0] mein erster Beitrag ist.

capitalizeFirst

Schreibt das erste Zeichen eines Werts groß.

Usage

{{capitalizeFirst value}}

Beispiel

In diesem Beispiel wird das erste Zeichen des ersten Wortes des Attributes.description.[0]-Eintrags groß geschrieben.

{{capitalizeFirst Attributes.description.[0]}} gibt Folgendes zurück

Mein erster Beitrag, wenn der Wert von Attributes.description.[0] mein erster Beitrag ist.

Beispiel

center

Zentriert den Wert in einem Feld mit einer bestimmten Breite um die angegebene Zahl. Sie können optional ein Zeichen für die Auffüllung angeben oder das Feld leer lassen. Wenn kein Zeichen angegeben wird, wird ein Leerzeichen verwendet.

Usage

{{center value size=X [pad=" "}} ersetzt X durch einen numerischen Wert.

Wenn pad leer gelassen wird, werden Leerzeichen als Füllung in der Antwort verwendet. Wenn Sie ein Zeichen angeben, wird dieses Zeichen in jedem Leerzeichen des Auffüllens angezeigt. Negative Zahlen werden nicht unterstützt.

Beispiel

In diesem Beispiel ist der Wert von Location.City mit einer Größe von 19 zentriert.

{{center Location.City size=19}} gibt Folgendes zurück

„    Los Angeles    “ Wenn Location.City Los Angeles lautet. Beachten Sie, dass die Anführungszeichen in der Beispielausgabe nur zur Hervorhebung dienen.

cut

Entfernt den angegebenen Wert aus einer Zeichenfolge.

Usage

{{cut value [" "]}}, ersetzt das Leerzeichen in den Anführungszeichen durch den auszuschneidenden Wert. Wenn kein Parameterwert übergeben wird, wird ein Leerzeichen verwendet.

Beispiel

In diesem Beispiel wird der Buchstabe e aus dem Location.City-Attribut entfernt.

{{cut Location.City "e"}} gibt Folgendes zurück

Los Angls, wenn [Location.City Los Angeles lautet.

dateFormat

Legt den Standard-Datumsstil für das Datum in jeder Antwort fest. Eine Liste der Zeitzonen-IDs finden Sie unter https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.

Usage

{{dateFormat date [inputFormat="format1"] [outputFormat="format2"] [tz=timeZoneId] [locale=localeID]}}

Der Parameter format muss einer der folgenden sein:

  • "full„: vollständiges Datumsformat. Zum Beispiel: Dienstag, 19. September 2020

  • "long„: langes Datumsformat. Zum Beispiel: 19. September 2020

  • "medium„: mittleres Datumsformat. Zum Beispiel: 19. Sept. 2020

  • "short„: kurzes Datumsformat. Zum Beispiel 19.09.20

  • "pattern„: verwendet ein benutzerdefiniertes Datumsmusterformat. Weitere Informationen zu Datumsmustern finden Sie unter https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

"locale„: verwendet ein Datumsformat, das auf einem bestimmten Gebietsschema basiert. Weitere Informationen zu Gebietsschemata finden Sie unter https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/LocaleUtils.html#toLocale-java.lang.String-.

Wenn ein Format nicht übergeben wird, wird medium standardmäßig verwendet.

Beispiel

In diesem Beispiel lautet der [0]-Eintrag für User.UserAttributes.StartDate.[0] 09/19/2020 und eine Nachricht wird an einen Benutzer gesendet, wobei das full-Datumsformat verwendet wird, das auf der Zeitzone America/Los_Angeles basiert.

We can meet with you any time on {{dateFormat User.UserAttributes.StartDate.[0] inputFormat="MM/dd/yyyy" outputFormat="full" tz=America/Los_Angeles}}. gibt Folgendes zurück

Wir können uns jederzeit am Dienstag, den 19. September 2020, mit Ihnen treffen.

inflect

Gibt eine Zeichenfolge im Singular oder Plural zurück, die auf dem Zählwert basiert.

Usage

{{inflect count singular plural [includeCount=false]}}

  • Geben Sie die Singular- und Pluralform der Zeichenfolge ein, die Sie im Argument übergeben möchten.

  • Wenn includeCount auf false gesetzt ist, wird in der Antwort keine Anzahl zurückgegeben. Wenn es auf true gesetzt, ist der count in der Antwort enthalten.

Beispiel

Die folgenden Beispiele zeigen die Beugung beim Kauf von Äpfeln mit und ohne includeCount.

Thank you for your purchase of {{inflect 3 apple apples includeCount=false}}. gibt Folgendes zurück:

Vielen Dank für Ihren Kauf von Äpfeln.

Wenn includeCount auf true gesetzt ist, dann lautet die Antwort

Vielen Dank für Ihren Kauf von 3 Äpfeln.

join

Verbindet ein Array, einen Iterator oder ein iterierbares Objekt. Die Antwort gibt eine Liste zurück, wobei jeder Wert in der Liste durch das Zeichen verkettet wird, das Sie im join übergeben Beispielsweise können Sie Werte mit einem Komma (,) trennen. Der Wert in diesem Helferobjekt muss eine Liste ohne Attributpositionsindex sein. Dabei könnte es sich zum Beispiel um Attributes.custom_attribute handeln.

Usage

{{join value " // " [prefix=""] [suffix=""]}}

Beispiel

In diesem Beispiel wird eine Liste von Farben zurückgegeben, wobei die Liste durch ein Komma und ein Leerzeichen (", ") getrennt ist:

{{join Attributes.favorite_colors ", "}} gibt Folgendes zurück

blau, rot, grün,, wenn Attributes.favorite_colors die Liste blau,rot,grün ist.

ljust

Richtet den Wert am linken Rand aus und fügt nach rechts Leerzeichen hinzu, sodass die Länge des Werts der Zahl entspricht. Negative Zahlen werden nicht unterstützt.

Sie können optional ein Zeichen für die pad angeben oder das Feld leer lassen. Wenn Sie den pad-Wert leer lassen, ist der Standardwert ein Leerzeichen.

Usage

{{ljust value size=X [pad=" "]}}, wobei X die Gesamtlänge des Werts einschließlich Leerzeichen ist.

Beispiel

In diesem Beispiel wird der Wert 15 für die linke Ausrichtung auf Location.City angewendet.

{{ljust Location.City size=15}} gibt Folgendes zurück

„Los Angeles    “ Wenn der Wert von Location.City Los Angeles lautet. Beachten Sie, dass die in der Beispielausgabe angezeigten Anführungszeichen nur zur Verdeutlichung dienen.

lower

Konvertiert einen Wert in Kleinbuchstaben.

Usage

{{lower value}}

Beispiel

In diesem Beispiel wird der [0] -Eintrag für User.UserAttributes.LastName.[0] in Kleinbuchstaben geändert.

{{lower User.UserAttributes.LastName.[0]}} gibt Folgendes zurück

santos, wenn Santos der Wert von [0] ist.

now

Druckt das aktuelle Datum basierend auf der übergebenen Zeitzonen-ID aus. Eine Liste der Zeitzonen-IDs finden Sie unter https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.

Usage

{{now ["format"] [tz=timeZoneId] [locale=localeID]}}

Der Parameter format muss einer der folgenden sein:

  • "full„: vollständiges Datumsformat. Zum Beispiel: Dienstag, 19. September 2020

  • "long„: langes Datumsformat. Zum Beispiel: 19. September 2020

  • "medium„: mittleres Datumsformat. Zum Beispiel: 19. Sept. 2020

  • "short„: kurzes Datumsformat. Zum Beispiel 19.09.20

  • "pattern„: ein Datumsmuster. Weitere Informationen zu Datumsmustern finden Sie unter https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

"locale„: verwendet ein Datumsformat, das auf einem bestimmten Gebietsschema basiert. Weitere Informationen zu Gebietsschemata finden Sie unter https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/LocaleUtils.html#toLocale-java.lang.String-.

Wenn ein Format nicht übergeben wird, wird medium standardmäßig verwendet.

Beispiel

In diesem Beispiel wird das aktuelle Datum in Los Angeles mit einem medium -Format zurückgegeben.

{{now "medium" tz=America/Los_Angeles}} gibt Folgendes zurück

19. Sept. 2020.

ordinalize

Ordinalisiert den im Argument übergebenen numerischen Wert. Zum Beispiel wird 1 als 1., 2 als 2. usw. ordinalisiert. Es werden nur numerische Werte unterstützt.

Usage

{{ordinalize [number]}}

Beispiel

In diesem Beispiel wird der [0]-Eintrag von User.UserAttributes.UserAge ordinalisiert und zusammen mit einer Meldung zurückgegeben.

Congratulations on your {{ordinalize User.UserAttributes.UserAge.[0]}} birthday! gibt22 ordinalisiert als 22. zurück.

Herzlichen Glückwunsch zu deinem 22. Geburtstag!

replace

Ersetzt eine Zeichenfolge durch eine andere. Eine Zeichenfolge oder ein numerischer Wert muss ein Literalwert sein. Platzhalterzeichen werden nicht unterstützt.

Usage

{{replace stringToReplace replacementValue}}

Beispiel

In diesem Beispiel ersetzt ein Unterstrich (_) ein Leerzeichen.

{{replace Location.City " " "_"}} gibt Folgendes zurück

Los_Angeles, wenn Location.City Los Angeles lautet.

rjust

Richtet den Wert am rechten Rand aus und fügt nach links Leerzeichen hinzu, sodass die Länge des Werts der Zahl entspricht. Negative Zahlen werden nicht unterstützt.

Sie können optional ein Zeichen für die pad angeben oder das Feld leer lassen. Wenn Sie den pad-Wert leer lassen, ist der Standardwert ein Leerzeichen.

Usage

{{rjust value size=X [pad=" "]}}, wobei X die Gesamtlänge des Werts einschließlich Leerzeichen ist.

Beispiel

In diesem Beispiel wird dem Location.City-Attribut der Wert 15 für die rechte Ausrichtung zugewiesen.

{{rjust Location.City size=15}} gibt Folgendes zurück

„    Los_Angeles“, wenn Location.City Los Angeles lautet. Beachten Sie, dass die in der Ausgabe angezeigten Anführungszeichen nur zur Verdeutlichung dienen.

slugify

Konvertiert den übergebenen Wert in Kleinbuchstaben, entfernt Zeichen, die kein Wort sind (alphanumerisch und Unterstrich), wandelt Leerzeichen in Bindestriche um und entfernt vorstehende oder nachfolgende Leerzeichen.

Usage

{{slugify value}}

Beispiel

In diesem Beispiel wird „slugify“ für das Location.City-Attribut ausgeführt.

{{slugify Location.City}} gibt Folgendes zurück

los-angeles, wenn Location.City Los Angeles lautet.

stripTags

Entfernt [X]HTML-Tags von einem Wert.

Usage

{{stripTags value}}

Beispiel

In diesem Beispiel werden die HTML-Tags für User.UserAttributes.interest.[0] entfernt.

{{stripTags User.UserAttributes.interests.[0]}} gibt Folgendes zurück

Art, wenn User.UserAttributes.interests.[0] <h1>Art</h1> lautet.

substring

Gibt eine neue Zeichenfolge als Teilzeichenfolge des übergebenen Werts zurück. Die Länge und Position werden durch die Parameter startOffset und endOffset bestimmt, bei denen es sich um ganze Zahlen handeln muss. Negative Zahlen werden nicht unterstützt. Wenn ein endOffset nicht übergeben wird, verwendet die Teilzeichenfolge den ursprünglichen Endwert der Zeichenfolge.

Usage

{{substring value startOffset [endOffset]}}

Beispiel

In diesem Beispiel werden ein Offset von 4 und ein endOffset von 9 auf das Location.City-Attribut angewendet.

{{substring Location.City 4 9}} returns

Angel, wenn Los Angeles der Wert von Location.City Los Angeles lautet.

upper

Konvertiert den übergebenen Wert in Großbuchstaben.

Usage

{{upper value}}

Beispiel

In diesem Beispiel wird der [0] -Eintrag für das User.UserAttributes.LastName-Attribut ausschließlich in Großbuchstaben umgewandelt.

{{upper User.UserAttributes.LastName.[0]}}returns

ROE, wenn der User.UserAttributes.LastName.[0]-Wert Roe lautet.

yesno

Ersetzt true, false und NULL durch Yes, No und Maybe.

Usage

{{yesno value [yes="yes"] [no="no"] maybe=["maybe"]}}

Beispiel

In diesem Beispiel gibt das IsUserSubscribed-Attribut zurück, ob ein Benutzer eine bestimmte Liste abonniert hat.

{{yesno Attributes.IsUserSubscribed}} gibt Folgendes zurück

ja, wenn Attributes.IsUserSubscribed true lautet.

In diesem Abschnitt werden die Mathematischen und Kodierungs-Hilfsobjekte beschrieben.

  • add: Gibt die Summe zweier Zahlen zurück.

  • ceiling: Rundet eine Ganzzahl auf ihre mathematische Obergrenze.

  • decode64: Dekodiert eine Base64-kodierte Zeichenfolge.

  • divide: Gibt den Quotienten zweier Zahlen zurück.

  • encode64: Kodiert eine Zeichenfolge mit Base64.

  • floor: Rundet eine Ganzzahl auf ihre mathematische Untergrenze.

  • md5: Hasht eine übergebene Zeichenfolge mithilfe des MD5-Algorithmus.

  • modulo: Gibt den Rest zweier Zahlen unter Verwendung von Fließkommazahlen zurück.

  • multiply: Gibt das Produkt zweier Zahlen zurück.

  • round: Rundet eine Dezimalzahl auf die nächste ganze Zahl.

  • sha256: Hasht eine übergebene Zeichenfolge mithilfe von SHA-256.

  • sha512: Hasht eine übergebene Zeichenfolge mithilfe von SHA-512.

  • subtract: Gibt die Differenz zweier Zahlen zurück.

  • uuid: Generiert nach dem Zufallsprinzip eine UUID in einem 128-Bit-Format.

hinzufügen

Gibt die Summe zweier Zahlen zusammen mit Fließkommazahlen zurück.

Usage

{{add arg1 arg2}}

Beispiel

{{add 5 2.3}} returns

7,3

ceiling

Rundet eine Ganzzahl auf ihre mathematische Obergrenze. Dabei handelt es sich um die höchste ganze Zahl, die dem übergebenen Wert am nächsten kommt.

Usage

{{ceiling value}}

Beispiel

{{ceiling 5.23}} gibt Folgendes zurück

6

decode64

Dekodiert eine Base64-kodierte Zeichenfolge.

Usage

{{decode64 "string"}}

Beispiel

{{decode64 "SGVsbG8gd29ybGQ="}} gibt Folgendes zurück

Hello World

divide

Gibt den Quotienten zweier Zahlen zurück, einschließlich Fließkommazahlen.

Usage

{{divide arg1 arg2}}

Beispiel

{{divide 5 2.3}} gibt Folgendes zurück

2,17391304

encode64

Kodiert die im Argument übergebene Zeichenfolge mit Base64.

Usage

{{encode64 "string"}}

Beispiel

{{encode64 "Hello World"}}

SGVsbG8gd29ybGQ=

floor

Rundet eine Ganzzahl auf ihre mathematische Untergrenze. Dabei handelt es sich um die niedrigste ganze Zahl, die dem übergebenen Wert am nächsten kommt.

Usage

{{floor value}}

Beispiel

{{floor 5.23}} gibt Folgendes zurück

5

md5

Hasht eine übergebene Zeichenfolge mithilfe des MD5-Algorithmus.

Usage

{{md5 "string"}}

Beispiel

{{md5 "Hello World"}}

3e25960a79dbc69b674cd4ec67a72c62

Modulo

Gibt den Rest zweier Zahlen unter Verwendung von Fließkommazahlen zurück.

Usage

{{modulo arg1 arg2}}

Beispiel

{{modulo 7 2}} gibt Folgendes zurück

1

multiply

Gibt das Produkt zweier Zahlen zusammen mit Fließkommazahlen zurück.

Usage

{{multiply arg1 arg2}}

Beispiel

{{multiply 5 2.3}} gibt Folgendes zurück

11.5

round

Rundet eine Dezimalzahl auf die nächste ganze Zahl.

Usage

{{round value}}

Beispiel

You spent an average of {{round 19.21}} minutes on our website each day. gibt Folgendes zurück:

Sie haben täglich durchschnittlich 19 Minuten auf unserer Website verbracht.

sha256

Hasht eine übergebene Zeichenfolge mit kryptografischer SHA-256-Sicherheit.

Usage

{{sha256 "string"}}

Beispiel

{{sha256 "Hello World"}} gibt Folgendes zurück

a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e

sha512

Hasht eine übergebene Zeichenfolge mit kryptografischer SHA-512-Sicherheit.

Usage

{{sha512 "string"}}

Beispiel

{{sha512 "Hello World"}} gibt Folgendes zurück

2c74fd17edafd80e8447b0d46741ee243b7eb74dd2149a0ab1b9246fb30382f27e853d8585719e0e67cbda0daa8f51671064615d645ae27acb15bfb1447f459b

subtract

Gibt die Differenz zweier Zahlen zusammen mit Fließkommazahlen zurück.

Usage

{{subtract arg1 arg2}}

Beispiel

{{subtract 5 2.3}} gibt Folgendes zurück

2,7

uuid

Generiert nach dem Zufallsprinzip eine UUID in einem 128-Bit-Format. Im Argument muss kein Wert übergeben werden.

Usage

{{uuid}}

Beispiel

{{uuid}} gibt Folgendes zurück

95f36680-152c-4052-99ec-cc3cdf7ca594

Inline-Partials sind zwar technisch gesehen kein Helferobjekte, aber sie sind eine Methode von Handlebars, um Vorlagen, die wiederholte Zeichenfolgen enthalten, zu vereinfachen und so eine einfachere Wiederverwendung zu ermöglichen. Weitere Informationen finden Sie unter Inline partials auf handlebarsjs.com.

Usage

{{#* inline "inlineName"}}Content to reuse{{/inline}}

Um den Inhalt des Inline-Partial an anderer Stelle zu referenzieren, verwenden Sie:

{{> inlineName}}

Beispiel

Sie können beispielweise einen Inline-Partial erstellen, der den Vornamen und, falls verfügbar, den Nachnamen des Empfängers enthält. Verwenden Sie dazu am Anfang Ihrer Vorlage den folgenden Code:

{{#* inline "fullName"}}

{{User.UserAttributes.FirstName.[0]}} {{#if User.UserAttributes.LastName.[0]}} {{User.UserAttributes.LastName.[0]}} {{/if}}

{{/inline}}

Nachdem Sie den fullName-Partial erstellt haben, können Sie ihn an jeder Stelle in Ihrer Vorlage verwenden, indem Sie dem Namen des Partials ein Größerzeichen > gefolgt von einem Leerzeichen voranstellen, wie im folgenden Beispiel: {{> fullName}}.

Hello {{> fullName}}

gibt den Vor- und Nachnamen des Benutzers zurück, falls der Wert „true“ ist, zum Beispiel Hello Jane Doe. Andernfalls wird Hello Jane zurückgegeben, wenn kein Nachname gefunden wird.

Handlebars umfasst neben den vorgestellten Features noch weitere Features. Weitere Informationen finden Sie unter handlebarsjs.com.

Verwenden von Variablen mit Helferobjekten für Nachrichtenvorlagen

Benutzerdefinierte Amazon-Pinpoint-Attribute, wie z. B. User.UserAttributes.LastName werden als Liste gespeichert, unabhängig davon, ob es sich um ein einzelnes Element oder mehrere Elemente handelt. Wenn Sie eine Liste in einem Helferobjekt übergeben, das eine Zeichenfolge erwartet, müssen Sie den Indexwert des Attributs zusammen mit dem Attributnamen angeben. Dieser Attributindexwert gibt die Position eines Werts aus der Attributliste an: .[0] für den ersten Eintrag in der Liste, .[1] für den zweiten, .[2] für den dritten usw. Nehmen wir zum Beispiel an, Sie verwenden das upper-Helferobjekt, um den ersten Eintrag ([0]) von User.UserAttributes.LastName in Großbuchstaben umzuwandeln. Die Verwendung des Helferobjekts ist {{upper value}} und das Attribut ist formatiert als User.UserAttributes.LastName. Ersetzen Sie den Wert wie folgt durch den Attributnamen und den Attributindexwert .[0]: {{upper User.UserAttributes.LastName.[0]}}. Die Antwort gibt dann den [0]-Eintrag aus der Liste zurück, der ausschließlich in Großbuchstaben formatiert ist. Wenn der Wert von [0] beispielsweise Santos ist, gibt die Antwort SANTOS zurück.

Namen von benutzerdefinierten Amazon-Pinpoint-Attributen unterstützen Leerzeichen. Um ein benutzerdefiniertes Attribut mit dem Namen "Last Name" aufrufen zu können, müssen Sie das Attribut als User.UserAttributes.[Last Name] formatieren. Um auf den ersten Eintrag in der Attributindexliste zuzugreifen, lautet das Format User.UserAttributes.[Last Name].[0].

Ein benutzerdefinierter Attributname kann bis zu 50 Zeichen enthalten. Ein Attributwert kann bis zu 100 Zeichen enthalten. Wenn Sie den Namen eines benutzerdefinierten Attributs definieren, vermeiden Sie die Verwendung der folgenden Zeichen: Zahlenzeichen (#), Doppelpunkt (:), Fragezeichen (?) , umgekehrter Schrägstrich (\) und Schrägstrich (/). Die Amazon-Pinpoint-Konsole kann keine Attributnamen anzeigen, die diese Zeichen enthalten. Diese Einschränkung gilt nicht für Attributwerte.

Verwenden von verschachtelten Helferobjekten

Sie können mehrere Helferobjekte für Nachrichtenvorlagen ineinander verschachteln. Im folgenden Beispiel wird gezeigt, wie zwei Helferobjekte formatiert werden: {{ first helper (second helper)}}. Das zweite Helferobjekt wird zuerst verarbeitet, gefolgt vom ersten Helferobjekt. Denken Sie daran, dass das erste Helferobjekt immer die Ausgabe bestimmt. Nachfolgende Helferobjekt müssen wie folgt innerhalb des vorherigen Helferobjekts verschachtelt sein: {{ first helper (second helper (third helper) )}}.

Das folgende Beispiel zeigt, wie zwei Helferobjekt verschachtelt werden, um JANE in Jane zu ändern: {{capitalizeFirst (lower "JANE")}}. lower konvertiert JANE zuerst in jane. Dann konvertiert capitalizeFirst jane in Jane.