Templování se nikdy neomrzí.. Z toho důvodu si dnes porovnáme Mustache a Handlebars.

Mustache

Především musím uznat, že dokumentace Mustache je docela zábavná. K vysvětlení toho, co Mustache umí a jak funguje, použili vlastní syntaxi. Na druhou stranu je dokumentace jeho trochu chudá, nemá zajímavé příklady ani dobrou ukázku. O tomhle už není moc co říct.

Odkaz na dokumentaci: http://mustache.github.io/mustache.5.html

Handlebars

Handlebars má dvě dokumentace. První, kterou budeme analyzovat, je ta na jejich webových stránkách (http://handlebarsjs.com/).

Není tak zábavná jako dokumentace Mustache, ale je mnohem čitelnější. Má průvodce instalací, který je opravdu přehledný. Zbytek dokumentace už tak úžasný není. Ano, většina příkladů je docela jasná, ale jsou tam i takové, které nemají reálné využití, například není běžné registrovat partial tak, jak to říká dokumentace.

Druhá dokumentace je ta na repu (https://github.com/wycats/handlebars.js/). Tato je to trochu zajímavější než ta na stránce. Obsahuje totiž další technické detaily, které je nutné zkontrolovat, když se rozhodujeme, který šablonovací jazyk použijeme (tj. kompatibilitu a výkon)

Vítěz kola:

Vítěz druhého kola. Partiály

Partiály se v jazyce Mustache implementují opravdu snadno. Není třeba je registrovat, deklarovat ani nic podivného.

Handlebars

Partiály v Handlebars jsou o něco složitější než v Mustache. Partials musíte registrovat pomocí následující syntaxe:

hbs.registerPartials(‚PATH TO FOLDER OR FILE‘);

Problém je v tom, že nemůžete mít partials na podsložkách. Například nebudete moci udělat toto:

> views

-> partials

– – >header

– – – >Menu

V tomto kole už není co říct.

Vítěz kola: Mustache !

3. kolo. Logika

Filozofií Knírače je zachovat jednoduchost. Z toho důvodu můžeme v našem zobrazení dělat opravdu málo věcí.

  • Mřížky
  • If/Else
  • Zobrazení proměnných

A to je vše. Ať je to jednoduché.

Handlebars

Handlebars je v tomto bodě mnohem složitější. Zde můžete s pomocníky handlebars dělat tolik logiky, kolik chcete. To je docela úžasné, ale je to také nebezpečná zbraň, protože tuny logiky v našem pohledu opravdu nechceme.

Pokud nechcete používat pomocníky, můžete udělat totéž, co v Mustache.

Vítěz kola:

Summary

Ok, je čas to shrnout.

Myslím si, že pokud vytváříte malou aplikaci nebo pokud opravdu nepotřebujete složitou logiku ve svém pohledu, měli byste používat Mustache. To proto, že chceš mít logiku co nejjednodušší a také nechceš mít ve své sadě nástrojů nějaké nebezpečné nástroje.

Na druhou stranu, tvá aplikace může potřebovat trochu složitější logiku než if a pole. V takovém případě bych určitě zvolil Handlebars, ale dejte si prosím pozor na pomocníky a nepřidávejte logiku, která by mohla být v kontroléru.

Děkuji za přečtení !

Juan.

Díky.