私が見た主な違いは次のとおりです。
- ハンドルバーは
#if
、、、およびを#unless
追加します#with
#each
- ハンドルバーがヘルパーを追加
- ハンドルバーのテンプレートがコンパイルされます(Mustache もコンパイルできます)
- ハンドルバーサポートパス
- ブロック内での使用を許可します
{{this}}
(現在のアイテムの文字列値を出力します) Handlebars.SafeString()
(そしておそらく他の方法も)- ハンドルバーは2~7倍の速さ
- 口ひげサポート反転セクション(つまり
if !x ...
)
(上記が間違っている場合は訂正してください。)
他に見逃している大きな違いはありますか?
ベストアンサー1
ほぼ完成しましたが、Mustache テンプレートもコンパイルできます。
Mustache はロジックレスを目指しているため、ヘルパーやより高度なブロックがありません。Handlebars のカスタム ヘルパーは非常に便利ですが、テンプレートにロジックを導入してしまうことがよくあります。
Mustacheにはさまざまなコンパイラ(JavaScript、Ruby、Python、Cなど)があります。HandlebarsはJavaScriptから始まりましたが、現在では次のようなプロジェクトがあります。django ハンドルバー、ハンドルバー.java、ハンドルバー-ルビー、ライトンキャンディ (PHP)、 そしてハンドルバーオブジェクト。