読者です 読者をやめる 読者になる 読者になる

Node.js テンプレートエンジン (Node.js template engine)

Node.js

Node.jsのテンプレートエンジンについてちょっと調べものしたメモです。

Node.js テンプレートエンジン

jjug CCC CfPの投票結果を見れるサイトを去年からNode.jsで作って公開していたのですが、
ECTとかいうマイナーなテンプレートエンジンを使用していたので変えたいと思い、
Node.jsで最近流行っているテンプレートは何かな?と思って軽く調べてみました。

調べてみたのは有名らしい下記8つ。
・handlebars.js
・jade
・Mustache.js
・Hogan.js
・jsrender
・dust.js
・doT.js
・nunjucks
・underscore.js(のテンプレート機能)

googleトレンドでの調べ方は、
jadeだけだと色々とひっかかるので、jade templateで検索。
underscore.jsはテンプレートとしての使い方を調べたかったので、underscore templateで検索。

Googleトレンドの結果




Googleトレンドで見てみるとnunjucksというのが急激に伸びているのがわかりました。
nunjucksを調べてみると、Jinja2というPythonのテンプレートエンジンから影響を受けて作られた
javascript用のテンプレートエンジンとのことです。

Nunjucks

Jinja2も知りませんでしたが、サンプルを見るとすごく直観的に記述できます。

{% extends "base.html" %}

{% block header %}
<h1>{{ title }}</h1>
{% endblock %}

{% block content %}
<ul>
  {% for name, item in items %}
  <li>{{ name }}: {{ item }}</li>
  {% endfor %}
</ul>
{% endblock %}

機能も豊富ですし、非常に軽量なので結局nunjucksを採用しました。
github.com

終わり。