9

最近は、handlerbars.js を使用していますが、かなり興味深いようです。そこで、皆さんからの小さな助けが必要です。

私は次のjson入力を持っています

"ALERTS": [
    {
        "alert_description": "ALCOHOL",
    },
    {
        "alert_description": "DIAGNOSIS",
    }
]

次のカンマ区切りの文字列を作成するためのテンプレートを作成する必要があります。

ALCOHOL, DIAGNOSIS

次のテンプレートを使用して、行ごとにこれらの値を印刷できました。

<div>
   <div>
{{#each this}}
    <span>{{alert_description}}</span>
{{/each}}
</div>
</div>

この問題を解決するのを手伝ってもらえますか? あなたの助けに感謝

ありがとうケス

4

2 に答える 2

3

この種のシナリオでは、ヘルパーを作成します。

これが私の実装です

Handlebars.registerHelper('commalist', function(items, options) {
  var out = '';

  for(var i=0, l=items.length; i<l; i++) {
    out = out + options.fn(items[i]) + (i!==(l-1) ? ",":"");
  }
  return out;
});

そしてテンプレート

<div>
   <div>
    {{#commalist this}}
       <span>{{alert_description}}</span>
    {{/commalist}}
   </div>
</div>

実際、ヘルパーはコンマだけのためにここにあります。ヘルパー内に html を配置することもできます (span、div など)。

于 2013-05-14T07:36:46.923 に答える