2012-03-25 13 views
7

Ich habe alle meine Inhalte pre-maskiert, also anstatt den Triple-Stash überall zu verwenden, möchte ich global Lenker zu entgehen deaktivieren. Eine schnelle Suche zeigte ein ähnliches Feature, das ich in meinem Lenkerbau sehen kann, aber ich weiß nicht, wie ich es anstellen soll.Handlebars.js deaktiviert das Escapen mit der Option noEscape?

Der Antrag Zug ist hier: https://github.com/wycats/handlebars.js/pull/121

Ich habe versucht, das Hinzufügen Handlebars.Compiler.options.noEscape = in meinem Code wahr, aber es kommt immer wieder mit den Optionen nicht definiert. Auch nach dem Definieren der Optionen wird es nicht aufgenommen. Weiß jemand, wie ich diese Option in meiner Skriptdatei aktivieren sollte? Dank

Antwort

25

Probieren Sie etwas wie folgt aus:

var template = Handlebars.compile(source, {noEscape: true}); 
+0

perfekt danke! – user842800

+0

Wie kann ich das in NodeJs tun? –

+0

@CaptainObvious Es sollte gleich sein. –

4

Angenommen,

var template = "This is {{target}}"; 
var target = "user's pictures"; 
var result = Handlerbars.compile(template, {noEscape:true})({target:target}); 

Jetzt Druckergebnis versuchen. Es gibt einen Apostroph im Zielzeichenfolgenwert. Das ändert sich nicht durch die codierte Zeichenkette. Wenn Sie die {noEscape:true} aus der Kompilierfunktion entfernen, wird es sich ändern.