2012-03-25 84 views
7

我的所有內容都是預先轉義的,所以我不想在全球範圍內使用三重存儲,我想全局禁用轉義轉義。一個快速搜索顯示了一個類似的功能,我可以在我的構建車把中看到,但我不知道如何打開它。Handlebars.js使用noEscape選項禁用轉義?

拉入請求是在這裏: https://github.com/wycats/handlebars.js/pull/121

我試着加入Handlebars.Compiler.options.noEscape =在我的代碼真實的,但它總是選擇未定義回來。即使在確定選項之後,它也沒有選擇它。有誰知道我應該如何在腳本文件中啓用此選項?由於

回答

25

嘗試是這樣的:

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

非常感謝! – user842800 2012-03-25 13:49:32

+0

我如何在nodejs中做到這一點? – 2013-11-15 20:29:02

+0

@CaptainObvious它應該是一樣的。 – 2013-11-16 07:46:51

4

假設,

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

現在嘗試打印結果。目標字符串值中有一個撇號。編碼字符串不會改變它。 如果您將從編譯功能中刪除{noEscape:true},它將會改變。