2013-03-21 53 views
9

我想選擇一個模板引擎Backbone.js框架我將在我的MVC應用程序中使用。Mustache.js,Handlebars.js和Underscore.js有何區別?

我讀過Backbone.js的是Mustache.jsHandlebars.jsUnderscore.js默認兼容,確實存在這些模板引擎之間的一些重要區別或他們做幾乎同樣的事情?

另外,是否存在其他模板引擎兼容Backbone.js應該認真考慮?

+0

請參閱此處:[客戶端模板提示:小鬍子,把手,dust.js等](http://engineering.linkedin.com/frontend/client-side-templating-throwdown-mustache-handlebars- dustjs-和更多)。下劃線是您提到的允許使用Javascript嵌入的三個中唯一的一個。 – 2013-03-21 22:58:23

+0

另請參閱http://stackoverflow.com/q/10194921 – 2013-03-21 23:01:55

+7

和http://garann.github.com/template-chooser/ – 2013-03-21 23:10:49

回答

6

小鬍子和把手是所謂的「無邏輯模板引擎」。他們強迫開發人員不要在視圖中包含任何過於複雜的邏輯,只需輸出數據所需的最基本的控制結構,保持HTML(或其他內容)的清潔。這也意味着他們完全是語言不可知的;你應該能夠在沒有任何編程/腳本語言的情況下使用它們。

下劃線然而是不同的。它本身就是一個JavaScript庫,就像Prototype或jQuery一樣,並附帶它自己的模板引擎。這些模板可以訪問庫中的任何方法或幫助程序,這意味着模板嚴格與JavaScript綁定,並且容納更多的邏輯。

+6

小鬍子是無邏輯的,把手不是。 – joelmdev 2013-10-07 13:30:18