2013-03-21 10 views
9

Chciałbym wybrać silnik szablonu dla struktury Backbone.js, której używam w mojej aplikacji MVC.Jaka jest różnica między Mustache.js, Handlebars.js i Underscore.js?

Czytałem backbone.js jest kompatybilny z Mustache.js, Handlebars.js i Underscore.js domyślnie, istnieje kilka ważnych różnic pomiędzy tymi silnikami szablonów lub robią prawie to samo?

Również istnieje inne silniki szablonów kompatybilne z Backbone.js powinny być poważnie rozważone?

+0

Zobacz tutaj: [Rzucanie szablonów po stronie klienta: wąsy, kierownice, dust.js i inne] (http://engineering.linkedin.com/frontend/client-side-templating-throwdown-mustache-handlebars- dustjs-i-więcej). Podkreślenie jest jedyną z trzech wymienionych pozycji, która umożliwia osadzanie w JavaScript. –

+0

Zobacz także http://stackoverflow.com/q/10194921 –

+7

i http://garann.github.com/template-chooser/ –

Odpowiedz

6

Wąsy i kierownice to tak zwane "bezobsługowe silniki szablonów". Zmuszają programistów do tego, aby nie uwzględniać w obrazie zbyt złożonej logiki, tylko najbardziej podstawowe struktury kontrolne potrzebne do wyprowadzania danych, utrzymując w czystości HTML (lub inną zawartość). Oznacza to również, że są całkowicie agnostyczne; powinieneś być w stanie używać ich z dowolnym językiem programowania/skryptowym przy niewielkich kłopotach.

Podkreślnik jest jednak inny. Jest to sama biblioteka JavaScript, taka jak Prototype lub jQuery, i jest dostarczana z własnym silnikiem szablonów. Szablony mają dostęp do dowolnej metody lub pomocników w bibliotece, co oznacza, że ​​szablony są ściśle powiązane z JavaScript i zawierają dużo więcej logiki.

+6

Wąsy są logiczne, kierownica nie jest. – joelmdev