JsTemplateはGoogleが開発したJavaScript製のテンプレートエンジンです。

Webアプリケーションがさらに開発されていくために必要なのが高機能なJavaScriptテンプレートエンジンの存在です。幾つか出てきていますが今回紹介するのはかなり有力です。なぜならGoogleが開発したテンプレートエンジンだからです。それがJsTemplateです。


デモです。左上がテンプレート、右上がJSONの元データになります。

そして左下が実際に生成されたHTMLで、右下がレンダリング結果になります。


idを使ってテンプレート名を定義しています。


こういう風にデータがない場合のチェックもできます。


実際のコードです。jsdisplayのところに検証が入っているのが分かります。


データがある場合はもちろん繰り返し表示します。


実際のコードです。

JsTemplateは再帰処理ができたりevalを使ってコードを実行するなど高度な利用ができます。変換した内容が再度テンプレートとして利用できるのも便利です。何よりGoogle製なので今後の開発にも期待でき、かつ実践的に使われていくであろうことも予想されます。

JsTemplateはJavaScript製のオープンソース・ソフトウェア(Apache License 2.0)です。

MOONGIFTはこう見る

JavaScriptのテンプレートというと、出力した後の書き換えが面倒だったりするのですが、普通のHTMLがそのままテンプレートとして使えるJsTemplateであれば各要素にidさえ指定しておけば問題ないかも知れません。JSONでデータをやり取りしつつ、コンテンツを差し替えるようにすればネットワーク通信量は大幅に軽減できるはずです。

AjaxでHTMLをそのまま飛ばして差し替えるだけというのは手軽ですが、通信量は大して変わらず速度もそれほど速く感じられません。よりダイナミックに高速な動作を目指すならやはりテンプレートを利用していくべきでしょう。今後要注目のソフトウェアと言えそうです。

JsTemplate クライアント側テンプレート システム - Google Code

google-jstemplate - Simple and robust browser side template processing for Ajax based web applications - Google Project Hosting