Templowanie nigdy się nie znudzi…. Z tego powodu, dzisiaj porównamy Mustache i Handlebars.

Mustache

Po pierwsze, muszę przyznać, że dokumentacja Mustache jest całkiem zabawna. Użyli własnej składni do wyjaśnienia co mustache potrafi i jak działa. Z drugiej strony, dokumentacja jest trochę uboga, nie ma ciekawych przykładów ani dobrego dema. Niewiele więcej można o niej powiedzieć.

Link do doc: http://mustache.github.io/mustache.5.html

Handlebars

Handlebars posiada dwie dokumentacje. Pierwszą, którą przeanalizujemy jest ta na ich stronie internetowej (http://handlebarsjs.com/).

Nie tak zabawna jak dokumentacja Mustache, ale o wiele łatwiejsza do przeczytania. Posiada przewodnik instalacji, który jest naprawdę przejrzysty. Reszta dokumentacji nie jest tak wspaniała. Tak, większość przykładów jest dość jasna, ale jest kilka innych, które nie mają prawdziwego zastosowania, na przykład nie jest powszechne rejestrowanie częściowe jak dokumentacja mówi, żeby to zrobić.

Drugą dokumentacją jest ta na repo (https://github.com/wycats/handlebars.js/). Ta jest trochę bardziej interesująca niż ta na stronie. Jest tak dlatego, że ma trochę więcej szczegółów technicznych, które są niezbędne do sprawdzenia, gdy decydujemy, którego języka szablonów będziemy używać (tj. kompatybilność i wydajność)

Zwycięzca rundy: Handlebars !

II runda. Partials

Partials w Mustache są naprawdę łatwe do zaimplementowania. Nie trzeba ich rejestrować, deklarować ani nic dziwnego.

Handlebars

Partials w Handlebars są trochę bardziej skomplikowane niż w Mustache. Musisz zarejestrować partiale za pomocą następującej składni:

hbs.registerPartials(’PATH TO FOLDER OR FILE’);

Problem z tym jest taki, że nie możesz mieć partiali na podfolderach. Na przykład, nie będziesz mógł zrobić tego:

> views

-> partials

– – >header

– – – >Menu

Niewiele więcej do powiedzenia w tej rundzie.

Zwycięzca rundy: Mustache !

3. runda. Logika

Filozofią Mustache jest utrzymanie prostoty. Z tego powodu w naszym widoku możemy zrobić naprawdę niewiele rzeczy.

  • Tarcze
  • If/Else
  • Wyświetl zmienne

I to wszystko. Keep it simple.

Handlebars

Handlebars jest dużo bardziej skomplikowany w tym punkcie. Tutaj możesz zrobić tyle logiki, ile chcesz z pomocnikami kierownicy. Jest to dość niesamowite, ale jest to również niebezpieczna broń, ponieważ naprawdę nie chcemy ton logiki na naszym widoku.

Jeśli nie chcesz używać helperów, możesz również zrobić to samo, co w Mustache.

Zwycięzca rundy: Draw !

Summary

Ok, czas na podsumowanie.

Myślę, że jeśli tworzysz małą aplikację lub jeśli naprawdę nie potrzebujesz złożonej logiki w swoim widoku, powinieneś używać Mustache. To dlatego, że chcesz zachować logikę tak prostą, jak to tylko możliwe, a także nie chcesz mieć niebezpiecznych narzędzi w swoim zestawie narzędzi.

Z drugiej strony, twoja aplikacja może potrzebować trochę bardziej złożonej logiki niż if’s i array’s. W takim przypadku zdecydowanie wybrałbym Handlebars, ale proszę uważać na pomocników i nie dodawać logiki, która mogłaby być w kontrolerze.

Dzięki za przeczytanie !

Juan.