Mustache.js: Wie drucke ich literal { vor der Schnurrbart-Variablen?

Erstellt am 16. Feb. 2014  ·  3Kommentare  ·  Quelle: janl/mustache.js

Ich habe eine Schnurrbart-Vorlage, in der ich die Variablen mit {} umgeben möchte.

var output = Mustache.render('<td>{{{start.lat}}, {{start.lon}}}</td>', routeObj);

Ich möchte, dass dies ein <td> mit der Zeichenfolge ausgibt: {1.8978, 30.4545}

{{{ hat eine besondere Bedeutung in Schnurrbart, also funktioniert es nicht. Gibt es eine Möglichkeit, dem ersten { im Schnurrbart zu entkommen?

Hilfreichster Kommentar

Zwei Möglichkeiten fallen mir ein:

  1. Setzen Sie das Trennzeichen vorübergehend auf etwas anderes als geschweifte Klammern, und schalten Sie es dann zurück, nachdem Sie die geschweiften Klammern gedruckt haben

var output = Mustache.render('<td>{{=<% %>=}}{<% start.lat %>, <% start.lon %>}<%={{ }}=%></td>', routeObj);

  1. Verwenden Sie Variablen, um { und } zu drucken

routeObj.openbrace = '{'; routeObj.closebrace = '}'; var output = Mustache.render('<td>{{openbrace}}{{start.lat}}, {{start.lon}}{{closebrace}}</td>', routeObj);

Alle 3 Kommentare

Zwei Möglichkeiten fallen mir ein:

  1. Setzen Sie das Trennzeichen vorübergehend auf etwas anderes als geschweifte Klammern, und schalten Sie es dann zurück, nachdem Sie die geschweiften Klammern gedruckt haben

var output = Mustache.render('<td>{{=<% %>=}}{<% start.lat %>, <% start.lon %>}<%={{ }}=%></td>', routeObj);

  1. Verwenden Sie Variablen, um { und } zu drucken

routeObj.openbrace = '{'; routeObj.closebrace = '}'; var output = Mustache.render('<td>{{openbrace}}{{start.lat}}, {{start.lon}}{{closebrace}}</td>', routeObj);

Was @alanhamlett auch zu HTML-Entitäten sagte: &#123; ist {

das funktioniert alles. Danke!

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

ForbesLindesay picture ForbesLindesay  ·  14Kommentare

kuldeepdhaka picture kuldeepdhaka  ·  9Kommentare

Immortalin picture Immortalin  ·  12Kommentare

barbalex picture barbalex  ·  5Kommentare

amper5and picture amper5and  ·  5Kommentare