我正在學習backbone.js
爲我正在處理的Rails 3
應用程序。骨幹使用underscore
,我相信它有自己的模板引擎內置。Backbone.js使用小鬍子有什麼優點/缺點?
我讀過關於小鬍子的好東西,但想知道如果我應該考慮使用它而不是內置的模板引擎的下劃線?
你的想法是什麼?
感謝
我正在學習backbone.js
爲我正在處理的Rails 3
應用程序。骨幹使用underscore
,我相信它有自己的模板引擎內置。Backbone.js使用小鬍子有什麼優點/缺點?
我讀過關於小鬍子的好東西,但想知道如果我應該考慮使用它而不是內置的模板引擎的下劃線?
你的想法是什麼?
感謝
我正在通過我的第一個企業級骨幹應用程序的一半左右。我目前使用內置模板的下劃線,因爲當我開始學習的時候,我的方式是用下劃線..我不一定對他們有任何問題。所有的模板解決方案都非常簡單。
我已經看了一些其他解決方案,並且正在考慮切換,但僅僅是因爲我認爲其他一些解決方案看起來更乾淨。還有一些解決方案有更多的功能。
我喜歡小鬍子,因爲它的語法較短。看起來更乾淨。但是,如果我切換,我想我會用Handlebars.js去。
Handlebars具有相同的簡短語法,加上大量其他功能,如自定義幫助器方法和設置模板內的對象上下文。檢查出來here。如果我在項目開始時就已經瞭解把手,我可能肯定會跳上它。
我不會擔心如其他人提到的那樣添加其他依賴項。無論如何,完成正確的骨幹應用程序將快速運行。 :D
如果您有任何其他問題,請告訴我。我一直非常享受中堅力量,因此我正在嘗試觀看標記的帖子。不過實話說。把手看起來合法。
編輯:
我也是爲了補充的是,車把的文檔看起來方式比下劃線更合法的......
我能想到的最大的con是,您要添加另一個庫做一些你的依賴已經這樣做了。如果語法是你最關心的問題,下面的代碼片段會告訴下劃線使用類似的語法。
_.templateSettings = {
evaluate : /\{\[([\s\S]+?)\]\}/g,
interpolate : /\{\{([\s\S]+?)\}\}/g
};
這兩個引擎之間沒有其他大的區別嗎?像結構明智或甚至功能像1只能做文本中的變量,而其他支持循環或嵌套模板或任何東西? – Sander 2012-01-10 16:57:53
我知道的主要區別在於,Mustache使用獨立於語言的語法,並具有多種語言的實現,因此您可以在前端和後端使用模板。 – JaredMcAteer 2012-01-10 17:01:23
另一個區別是鬍鬚是無邏輯的,它需要一個人更嚴格地分離表示和代碼。 – wprl 2012-09-20 19:19:57
問題問Rails的,但不標記左右;所以con與使用像django模板的類鬍鬚語法的語言衝突。
如果一個django模板首先解析一個塊,它會在寫入JS之前嘗試填充{{ }}
塊。
我使用的忽略{{}}
塊verbatim
Django的模板標籤來解決這個問題,但我現在希望我使用的是默認<%=%>
語法,這樣我就不必明確逃避這些塊寫在Django的模板引擎。
對文檔的評論+1,強調文檔比許多其他引擎更糟糕。 – Sander 2012-01-10 17:24:42
提及''Handlebars.js'。我一定會檢查出來的!順便說一下,有沒有其他的編碼器想要現在生長車把鬍子? – cbmeeks 2012-01-10 20:42:09
再次感謝。你不僅得到了很好的答案,而且還指出了我從未聽說過的另一種選擇。 – cbmeeks 2012-01-11 17:42:31