2013-03-27 7 views
10

ヒゲに変数を渡すことができますことは、私はこのが、それは部分的

<button name="{{name}}" class="btn">{{title}}</button> 

のような部分的な口ひげボタンを持っているとしましょう、それが直接この

<form> 
.... 
{{> button|name=foo,title=Cancel}} {{> button|name=bar,title=Submit}} 
</form> 
のような部分を呼び出すときにタイトルを設定するために何とか可能です

これは、このようなものの代わりにビューを作成し、各ボタンのハッシュを作成する方がはるかに簡単です。

<form> 
.... 
{{#buttons}} 
    {{> button}} 
{{/buttons}} 
</form> 

答えて

3

私はあなたがそれを行うことができますかわからないが、私は口ひげ機能

javascriptの

var partial = "<div>{{value}}</div>"; 
var data = {some_data:[1,2,3]}; 
var items = {func:function(){ 
    return function (index){ 
     return mustache.render(partial,{value : data.some_data[index]}); 
    } 
}); 
mustache.render(main,items); 

口ひげ

{{#func}}1{{/func}} 
{{#func}}2{{/func}} 
1

を使用すると、それはそれを行うことが可能ではないことを回避平凡な口ひげですが、ヘルパーと一緒にハンドルバーでやることができます。ハンドルバーはMustacheの拡張版なので、パーサーライブラリを置き換えるだけでハンドルバーに切り替えることができます。ここでは、ハンドルバーに見えるかもしれません方法は次のとおりです。

JSヘルパー(他の多くの言語の実装もあります):テンプレートで

Handlebars.registerHelper('button', function(title, options) { 
    var attrs = Em.keys(options.hash).map(function(key) { 
     key + '="' + options.hash[key] + '"'; 
    }).join(" "); 
    return new Handlebars.SafeString(
     "<button " + attrs + ">" + title + "</button>"); 
}); 

用途:

{{buttton title name="name" class="class"}} 

詳細情報れます利用可能:http://handlebarsjs.com/

関連する問題