Templare non diventa mai vecchio. Per questo motivo, oggi confronteremo Mustache e Handlebars.
Mustache
Prima di tutto, devo ammettere che la documentazione di Mustache è piuttosto divertente. Hanno usato la loro sintassi per spiegare cosa può fare Mustache e come funziona. D’altra parte, la documentazione è un po’ povera, non ha esempi interessanti o una buona demo. Non c’è molto altro da dire su questo.
Link alla documentazione: http://mustache.github.io/mustache.5.html
Handlebars
Handlebars ha due documentazioni. La prima che analizzeremo è quella nel loro sito web (http://handlebarsjs.com/).
Non è divertente come la documentazione di Mustache ma molto più facile da leggere. Ha una guida all’installazione che è davvero chiara. Il resto della documentazione non è così fantastico. Sì, la maggior parte degli esempi sono abbastanza chiari ma ce ne sono alcuni altri che non hanno un’applicazione reale, per esempio non è comune registrare il partial come la documentazione dice di fare.
La seconda documentazione è quella sul repo (https://github.com/wycats/handlebars.js/). Questa è un po’ più interessante di quella sulla pagina. Questo perché ha alcuni dettagli tecnici in più che sono necessari da controllare quando stiamo decidendo quale linguaggio di template useremo (cioè compatibilità e prestazioni)
Vincitore del round: Manubri !
Secondo round. Parziali
I parziali in Mustache sono davvero facili da implementare. Non hanno bisogno di essere registrati, dichiarati o cose strane.
Handlebars
I parziali in Handlebars sono un po’ più complessi che in Mustache. Devi registrare i partial con la seguente sintassi:
hbs.registerPartials(‘PATH TO FOLDER OR FILE’);
Il problema con questo è che non puoi avere partial su sottocartelle. Per esempio, non sarai in grado di fare questo:
> views
-> partials
– – >header
– – – >Menu
Non ho molto altro da dire in questo round.
Vincitore del round: Mustache !
3° round. Logica
La filosofia di Baffi è di mantenere la semplicità. Per questo motivo, possiamo fare davvero poche cose nella nostra vista.
- Arrays
- If/Else
- Variabili display
E questo è tutto. Mantienilo semplice.
Handlebars
Handlebars è molto più complesso in questo punto. Qui, potete fare tutta la logica che volete con gli helper di handlebars. Questo è abbastanza impressionante ma è anche un’arma pericolosa perché non vogliamo davvero tonnellate di logica nella nostra vista.
Se non volete usare gli helper, potete anche fare lo stesso che in Mustache.
Vincitore del round: Draw !
Summary
Ok, è ora di riassumere.
Penso che se stai creando una piccola applicazione o se non hai davvero bisogno di una logica complessa nella tua vista, dovresti usare Mustache. Questo perché vuoi mantenere la tua logica il più semplice possibile e inoltre non vuoi avere alcuni strumenti pericolosi nella tua cassetta degli attrezzi.
Al lato, la tua app potrebbe aver bisogno di una logica un po’ più complessa di if e array. In questo caso sceglierei sicuramente Handlebars ma, per favore, fai attenzione agli helper e non aggiungere la logica che potrebbe essere nel controller.
Grazie per aver letto !
Juan.
Lascia un commento