前人未踏の領域へ アプリ開発編

Android, iOSアプリ開発に関する調査メモ置き場。ほとんどAndroid。はてなダイアリーから移行したため古い記事にはアプリ以外も含まれます。

配列を扱うためのHelper

解説

HandlebarsはJSのテンプレートエンジンであらかじめいくつかの機能を提供してくれているが、
いろいろなデータを出力しようとするとどうしても足りない機能が出てくる。そんな時にはHelperを自分で作る必要がある。
ということで配列をそのまま順に出力させるHelperを作ってみた。

コード

/**
 * 配列を扱う
 */
Handlebars.registerHelper('array', function(context, options) {
  var ret = '';
  for(var i=0, j=context.length; i<j; i++) {
  //名前がないと取り出せないので'var'という名前を持つオブジェクトにして扱う
    ret = ret + options.fn({'val':context[i]});
  }
  return ret;
});

使い方

//サンプルデータ
var alpha = ['a','b','c','d','e'];

//テンプレート側
<ul>
  {{#array alpha}}
    <li>{{var}}</li>
  {{/array}}
</ul>