簡體   English   中英

如何將屬性傳遞給Handlebars助手

[英]How to pass a property to an Handlebars helper

我試圖在我的Ember.js應用程序中注冊一個Handlebars.js幫助器,這將允許我傳入一個視圖屬性,這是一個簡單的html字符串,無需轉義即可呈現。 我的模板看起來像這樣:

  <span class="add-on">{{log view.append}}{{safeMarkup view.append}}</span>

在這種情況下,log語句將html字符串正確輸出到控制台,類似於<span>text</span>

我的助手safeMarkup如下:

Handlebars.registerHelper('safeMarkup', (string) ->
  return new Handlebars.SafeString(string)
)

然而,渲染的不是view.append屬性的值,而是字符串“view.append”本身! 像這樣: <span class="add-on">view.append</span> 任何想法在這里出了什么問題? 謝謝

在車把:

{{span 'className'}}

在app中:

Handlebars.registerHelper('span', function(className) {
  return new Handlebars.SafeString("<span class='"+Handlebars.Utils.escapeExpression(className)+"'></span>");
});

您還可以使用三重胡子來避免轉義html字符串... http://jsbin.com/imafuq/8/edit

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM