我一直在比較不同的JavaScript模板引擎,以查看哪一個能夠爲大型數據集提供最佳性能。我遇到的一個是Underscore.js。但是,我還沒有能夠得到任何例子的工作。我的模板的樣子:在ASP.NET中使用Underscore.js
<% _.each(projects(), function(project) { %>
<tr>
<td><%= project.code %></td>
<td><%= project.request %></td>
<td><%= project.stage %></td>
<td><%= project.type %></td>
<td><%= project.launch %></td>
</tr>
<% }) %>
然而,當我運行該頁面我得到了一個服務器端的ASP.NET例外,因爲它試圖編譯<% ... %>
標籤內的文本:
Compiler Error Message: CS1026:) expected
Line 826: <% _.each(projects(), function(project) { %>
我無法找到逃避這些標籤的方法,也沒有找到一種方法來配置Underscore以使用不同的語法。有沒有解決方法,或者是Underscore和ASP.NET只是互相不兼容?
謝謝!這段代碼幫了我很大的忙。我知道它的工作原理,但由於某種原因,現在頁面加載時會有10-15秒的延遲。不知道發生了什麼,但實際的綁定並沒有比jQuery.tmpl,所以我可能會回去使用它。 – 2012-03-15 18:04:51
是的,我不認爲這麼快,但是因爲我們爲我們的網站使用Backbone並且已經安裝了Underscore,所以最好使用它。當然我們也有jQuery ... – tkone 2012-03-15 18:06:07
啊,當我在本地複製'underscore-min.js'文件時,延遲就消失了,你猜這是在一個非常慢的服務器上。實際上,對於較小的數據集似乎更快一些,對於較大的數據集大致相同。我最終可能會保留它。 – 2012-03-15 18:37:03